c# - 如何设置 datagridview 中行/列标题单元格的背景颜色 - c# winform

标签 c# winforms datagridview colors

我想设置 datagridview 的行标题和列标题交叉单元格的背景颜色。我尝试了下面的代码,但它引发了一个异常,即该数字应该为非负数。

DataGridViewCell cell = dgview.Rows[-1].Cells[-1];
cell.Style.BackColor = Color.Red;

我想设置如下图所示的颜色

enter image description here

我还引用了下面的文章,但它展示了如何设置整个列标题的颜色。但我的要求是设置单个单元格的颜色 - 行列标题交叉单元格。

how-to-change-the-color-of-winform-datagridview-header

非常感谢任何帮助。谢谢。

问候,

维奈

最佳答案

将当前的 ColumnHeadersDefaultCellStyle 存储在变量中。

将 ColumnHeadersDefaultCellStyle 设置为您希望的角点样式。

然后将所有列标题更改为您希望第 0 列到...的方式回到旧样式。

下面是一个示例,其中表单名为“MyForm”。此示例显示了 MyForm 的默认构造函数。

示例:

    public MyForm()
    {
        InitializeComponent();

        // insert code here to add columns  ...
        // ...
        // ...
        // ...

        DataGridViewCellStyle oldDefault = dgview.ColumnHeadersDefaultCellStyle.Clone();

        dgview.ColumnHeadersDefaultCellStyle.BackColor = Color.Red;

        foreach (DataGridViewColumn item in dgview.Columns)
        {
            item.HeaderCell.Style = oldDefault;
        }
    }

关于c# - 如何设置 datagridview 中行/列标题单元格的背景颜色 - c# winform,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7133939/

相关文章:

c# - 从 Office Web 加载项访问 C# 库

winforms - 具有新的 Office High DPI 支持的 Outlook VSTO

c# - 在 C# (winforms) 中本地化 UserControl 的最佳方法

c# - 使用自定义对象的动态列表并且不能动态更改 dataGrid 的单元格属性

c# - 在 DataGridView 中将自动生成的列设置为只读

c# - 如何使用 SelectionChanged 事件检查是否在 datagridview 中单击了列标题

c# - c sharp exe打开时应该要求 "run as administrator"提示

c# - 使用特定数据跟踪数据库插入

c# - 代码隐藏中无法识别 XAML 控件

c# - 为什么 Path.Combine 没有合并路径和文件?