winforms 如何更改datagridView标题颜色

kmb7vmvb  于 2022-11-25  发布在  其他
关注(0)|答案(3)|浏览(232)

现在datagridView标题背景颜色显示为灰色。我想更改为其他颜色。
我更改了ColumnHeaderDefaultCellStyle中的背景颜色,但没有任何更改。
如何做到这一点。

y53ybaqx

y53ybaqx1#

将属性EnableHeadersVisualStyles设定为False,然后将ColumnHeaderDefaultCellStyle背景色彩变更为您想要的色彩。您将能够在设计工具本身中看到变更。

7y4bm7vi

7y4bm7vi2#

此外,如果您尝试设置单个列标题的颜色(背景色或前景色)或其他属性(不是一次设置所有属性),请使用

datagridview.Columns(e.ColumnIndex).HeaderCell.Style.BackColor = color.cyan
datagridview.Columns(e.ColumnIndex).HeaderCell.Style.(ForeColor or Font or Alignment etc) = whatever

其中,e.ColumnIndex取自事件的EventArgs,但您可以进行相应的更改。

qnakjoqk

qnakjoqk3#

在datagridView中,您可以使用DataGridViewCellStyle更改标题颜色,请参见以下代码

' Set the selection background color for all the cells.
    dataGridView1.DefaultCellStyle.SelectionBackColor = Color.White
    dataGridView1.DefaultCellStyle.SelectionForeColor = Color.Black

    ' Set RowHeadersDefaultCellStyle.SelectionBackColor so that its default
    ' value won't override DataGridView.DefaultCellStyle.SelectionBackColor.
    dataGridView1.RowHeadersDefaultCellStyle.SelectionBackColor = Color.Empty

    ' Set the background color for all rows and for alternating rows. 
    ' The value for alternating rows overrides the value for all rows. 
    dataGridView1.RowsDefaultCellStyle.BackColor = Color.LightGray
    dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.DarkGray

    ' Set the row and column header styles.
    dataGridView1.ColumnHeadersDefaultCellStyle.ForeColor = Color.White
    dataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.Black
    dataGridView1.RowHeadersDefaultCellStyle.BackColor = Color.Black

编辑:
使用DataGridViewCellStyle,您的标题颜色将更改,但标题部分中的列分隔符不会出现。因此,这里是OnPaint事件处理程序的一个被覆盖的事件。请查看this

相关问题