DataGridViewColumn.HeaderText Property


Gets or sets the caption text on the column's header cell.

 property System::String ^ HeaderText { System::String ^ get(); void set(System::String ^ value); };
public string HeaderText { get; set; }
member this.HeaderText : string with get, set
Public Property HeaderText As String

Property Value


A String with the desired text. The default is an empty string ("").


The following code example uses the HeaderText property to change the text in the column header. This code example is part of a larger example provided for the DataGridViewColumn class.

// Change the text in the column header.
void Button9_Click( Object^ /*sender*/, EventArgs^ /*args*/ )
   IEnumerator^ myEnum2 = dataGridView->Columns->GetEnumerator();
   while ( myEnum2->MoveNext() )
      DataGridViewColumn^ column = safe_cast<DataGridViewColumn^>(myEnum2->Current);
      column->HeaderText = String::Concat( L"Column ", column->Index.ToString() );
// Change the text in the column header.
private void Button9_Click(object sender,
    EventArgs args)
    foreach (DataGridViewColumn column in dataGridView.Columns)

        column.HeaderText = String.Concat("Column ",
' Change the text in the column header.
Private Sub Button9_Click(ByVal sender As Object, _
    ByVal args As EventArgs) Handles Button9.Click

    For Each column As DataGridViewColumn _
        In dataGridView.Columns

        column.HeaderText = String.Concat("Column ", _
End Sub


This property is useful only when the column has an associated header cell. For more information, see the HeaderCellCore property.


There is no corresponding header text property for rows. To display labels in row headers, you must handle the DataGridView.CellPainting event and paint your own labels when DataGridViewCellPaintingEventArgs.ColumnIndex is -1.

Applies to

See also