Reputation: 1961
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.
Upvotes: 7
Views: 41759
Reputation: 21
Create a method name called SetUpDataGridView
private void SetUpDataGridView()
{
dataGridView1.Columns[0].HeaderText = "Emp.Id";
dataGridView1.Columns[0].HeaderCell.Style.BackColor = Color.Chartreuse;
dataGridView1.Columns[1].HeaderText = "Emp. Name";
dataGridView1.Columns[1].HeaderCell.Style.BackColor = Color.Fuchsia;
}
Add the method in Form_Load. You can add different color for every header
Upvotes: 2
Reputation: 2458
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);
}
Upvotes: 3
Reputation: 1101
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;
Upvotes: 18