Click here to Skip to main content
15,893,663 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
How one can change the header font color

VB
Private Sub FillDataGridView1(ByVal Query As String)
    da = New OleDbDataAdapter(Query, cn)
    dt.Clear()
    da.Fill(dt)
    With DataGridView1
        .DataSource = dt
        DataGridView1.Columns(0).Width = 90
        DataGridView1.Columns(1).Width = 150
        DataGridView1.Columns(2).Width = 150
        DataGridView1.Columns(3).Width = 70
        DataGridView1.Columns(4).Width = 120
        DataGridView1.Columns(5).Width = 150
        DataGridView1.Columns(6).Width = 95
        DataGridView1.Columns(7).Width = 80
        DataGridView1.Columns(8).Width = 100
        .Columns(0).HeaderText = "ID"
        .Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        .Columns(1).HeaderText = "Family Name"
        .Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        .Columns(2).HeaderText = "Given Name"
        .Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        .Columns(3).HeaderText = "Gender"
        .Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        .Columns(4).HeaderText = "DOB"
        .Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        .Columns(5).HeaderText = "Street Name"
        .Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        .Columns(6).HeaderText = "House Nr"
        .Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        .Columns(7).HeaderText = "Postcode"
        .Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        .Columns(8).HeaderText = "City"
        .Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
        .Columns(8).AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
        DataGridView1.DefaultCellStyle.SelectionBackColor = Color.Sienna
        DataGridView1.DefaultCellStyle.SelectionForeColor = Color.White
        DataGridView1.RowsDefaultCellStyle.BackColor = Color.WhiteSmoke
        DataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.LightGray

    End With
    With DataGridView1.ColumnHeadersDefaultCellStyle
        .Font = New Font(DataGridView1.Font, FontStyle.Bold)

    End With
End Sub
Posted
Updated 9-Jun-15 1:56am
v2

1 solution

You have to disable the EnableHeadersVisualStyles[^] property in order for your desired changes to be used (i.e. not overridden by user theme). The default value for the property is True

E.g.
VB
DataGridView1.EnableHeadersVisualStyles = False
With DataGridView1.ColumnHeadersDefaultCellStyle
    .Font = New Font(DataGridView1.Font, FontStyle.Bold)
    .BackColor = Color.Azure
    .ForeColor = Color.Crimson
End With
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900