ColumnHeader.TextAlign Property


Gets or sets the horizontal alignment of the text displayed in the ColumnHeader.

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

public HorizontalAlignment TextAlign { get; set; }

Property Value

Type: System.Windows.Forms.HorizontalAlignment

One of the HorizontalAlignment values. The default is Left.

You can use this property to provide different text alignment settings for the text displayed in each ColumnHeader.


Due to a limitation in the underlying control, this property has no effect on the first column in the ListView control, which is always aligned to the left. To work around this limitation in .NET Framework 2.0, you can handle the ListView.DrawColumnHeader event and paint the column header yourself.

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.

private void PopulateListView()
	ListView1.Width = 270;
	ListView1.Location = new System.Drawing.Point(10, 10);

	// Declare and construct the ColumnHeader objects.
	ColumnHeader header1, header2;
	header1 = new ColumnHeader();
	header2 = new 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.

       // 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 = 
		new System.IO.DirectoryInfo(
		"C:\\Documents and Settings\\All Users" +
		"\\Documents\\My Pictures\\Sample Pictures");

	// Get the .jpg files from the directory
	System.IO.FileInfo[] files = dirInfo.GetFiles("*.jpg");

	// Add each file name and full name including path
	// to the ListView.
	if (files != null)
		foreach ( System.IO.FileInfo file in files )
			ListViewItem item = new ListViewItem(file.Name);

.NET Framework
Available since 1.1
Return to top