change specific column header color only in datagr

2019-06-21 13:32发布

问题:

Uses: VS 2005, C#, DataGridView, WinForms;

I need to color the font/background of a particular column's Header portion. I see that it can only be done to the entire column list's header instead of a single column. Any help greatly appreciated.

回答1:

First in your DataGridView you need to set EnableHeadersVisualStyles to false. After you've done that you can set the individual header style on each column.

        DataGridViewColumn dataGridViewColumn = dataGridView1.Columns[0];
        dataGridViewColumn.HeaderCell.Style.BackColor = Color.Magenta;
        dataGridViewColumn.HeaderCell.Style.ForeColor = Color.Yellow;


回答2:

Do it in this way

DataGridViewTextBoxColumn col = new DataGridViewTextBoxColumn();
{
     col.Name = "ColumnName";
     col.HeaderText = "HeaderName";
     col.DefaultCellStyle.ForeColor = Color.White;
     col.HeaderCell.Style.BackColor = Color.Red; //Column Header Color
     this.dataGridView1.Columns.Add(col);
}