This documentation is archived and is not being maintained.

ColumnHeader Class

Displays a single column header in a ListView control.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public ref class ColumnHeader : public Component, 

The ColumnHeader type exposes the following members.

Public methodColumnHeader()Initializes a new instance of the ColumnHeader class.
Public methodColumnHeader(Int32)Initializes a new instance of the ColumnHeader class with the image specified.
Public methodColumnHeader(String)Initializes a new instance of the ColumnHeader class with the image specified.

Protected propertyCanRaiseEventsGets a value indicating whether the component can raise an event. (Inherited from Component.)
Public propertyContainerGets the IContainer that contains the Component. (Inherited from Component.)
Protected propertyDesignModeGets a value that indicates whether the Component is currently in design mode. (Inherited from Component.)
Public propertyDisplayIndexGets or sets the display order of the column relative to the currently displayed columns.
Protected propertyEventsGets the list of event handlers that are attached to this Component. (Inherited from Component.)
Public propertyImageIndexGets or sets the index of the image displayed in the ColumnHeader.
Public propertyImageKeyGets or sets the key of the image displayed in the column.
Public propertyImageListGets the image list associated with the ColumnHeader.
Public propertyIndexGets the location with the ListView control's ListView::ColumnHeaderCollection of this column.
Public propertyListViewGets the ListView control the ColumnHeader is located in.
Public propertyNameGets or sets the name of the ColumnHeader.
Public propertySiteGets or sets the ISite of the Component. (Inherited from Component.)
Public propertyTagGets or sets an object that contains data to associate with the ColumnHeader.
Public propertyTextGets or sets the text displayed in the column header.
Public propertyTextAlignGets or sets the horizontal alignment of the text displayed in the ColumnHeader.
Public propertyWidthGets or sets the width of the column.

Public methodAutoResizeResizes the width of the column as indicated by the resize style.
Public methodCloneCreates an identical copy of the current ColumnHeader that is not attached to any list view control.
Public methodCreateObjRefCreates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.)
Public methodDispose()Releases all resources used by the Component. (Inherited from Component.)
Protected methodDispose(Boolean)Disposes of the resources (other than memory) used by the ColumnHeader. (Overrides Component::Dispose(Boolean).)
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeReleases unmanaged resources and performs other cleanup operations before the Component is reclaimed by garbage collection. (Inherited from Component.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetLifetimeServiceRetrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Protected methodGetServiceReturns an object that represents a service provided by the Component or by its Container. (Inherited from Component.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodInitializeLifetimeServiceObtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Protected methodMemberwiseClone()Creates a shallow copy of the current Object. (Inherited from Object.)
Protected methodMemberwiseClone(Boolean)Creates a shallow copy of the current MarshalByRefObject object. (Inherited from MarshalByRefObject.)
Public methodToStringReturns a string representation of this column header. (Overrides Component::ToString().)

Public eventDisposedOccurs when the component is disposed by a call to the Dispose method. (Inherited from Component.)

A column header is an item in a ListView control that contains heading text. ColumnHeader objects can be added to a ListView using the Add method of the ListView::ColumnHeaderCollection class. To add a group of columns to a ListView, you can use the AddRange method of the ListView::ColumnHeaderCollection class. You can use the Index property of the ColumnHeader class to determine where the ColumnHeader is located in the ListView::ColumnHeaderCollection.

ColumnHeader provides the Text and TextAlign properties to set the text displayed in the control and the alignment of the text in the column header. To determine whether a ColumnHeader is associated with a ListView control, you can reference the ListView property. If you want to copy a ColumnHeader for use in another ListView control, you can use the Clone method.

The following code example demonstrates initializing a ListView control. The example creates ColumnHeader objects and sets the column header's Text, TextAlign and Width properties. The example also adds items and subitems to the ListView. To run this example paste the following code in a form and call the PopulateListView method from the form's constructor or Load event handler.

   void PopulateListView()
      ListView1->Width = 270;
      ListView1->Location = System::Drawing::Point( 10, 10 );

      // Declare and construct the ColumnHeader objects.
      ColumnHeader^ header1;
      ColumnHeader^ header2;
      header1 = gcnew ColumnHeader;
      header2 = gcnew ColumnHeader;

      // Set the text, alignment and width for each column header.
      header1->Text = "File name";
      header1->TextAlign = HorizontalAlignment::Left;
      header1->Width = 70;
      header2->TextAlign = HorizontalAlignment::Left;
      header2->Text = "Location";
      header2->Width = 200;

      // Add the headers to the ListView control.
      ListView1->Columns->Add( header1 );
      ListView1->Columns->Add( header2 );

	  // Specify that each item appears on a separate line.
      ListView1->View = View::Details;

      // Populate the ListView.Items property.
      // Set the directory to the sample picture directory.
      System::IO::DirectoryInfo^ dirInfo = gcnew System::IO::DirectoryInfo( "C:\\Documents and Settings\\All Users"
      "\\Documents\\My Pictures\\Sample Pictures" );

      // Get the .jpg files from the directory
      array<System::IO::FileInfo^>^files = dirInfo->GetFiles( "*.jpg" );

      // Add each file name and full name including path
      // to the ListView.
      if ( files != nullptr )
         System::Collections::IEnumerator^ myEnum = files->GetEnumerator();
         while ( myEnum->MoveNext() )
            System::IO::FileInfo^ file = safe_cast<System::IO::FileInfo^>(myEnum->Current);
            ListViewItem^ item = gcnew ListViewItem( file->Name );
            item->SubItems->Add( file->FullName );
            ListView1->Items->Add( item );

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.