我在 Windows 窗体应用程序中使用 DataGridView,其中使用 DataGridViewCheckBoxColumns。问题是他们有一个标准的选择背景色,我似乎无法改变。我的意思是复选框中的蓝色,如下图所示。
我尝试像这样更改颜色(在 DataGridView 初始化中循环通过 DataGridViewColumns 时):
if (col.GetType() == typeof(DataGridViewCheckBoxColumn))
{
col.CellTemplate.Style.SelectionBackColor = WinFormsUITheme.styleColor;
col.CellTemplate.Style.SelectionForeColor = WinFormsUITheme.styleColor;
}
但这行不通。这个颜色应该怎么改呢?或者这是不可能的? 是否有办法更改整个 Windows 窗体项目的标准 Windows 选择突出显示颜色?或者也许这应该在 DataGridViewCellPainting 事件中完成?
在表单加载事件中使用以下代码片段。
var cellstyle= new DataGridViewCellStyle();
cellstyle.SelectionBackColor = System.Drawing.SystemColors.ControlLightLight;
dataGridView1.Columns["YOURGRIDCOLUMNNAME"].DefaultCellStyle = cellstyle;