C# 如何以编程方式更改DataGridView中绑定到具有自定义类的BindingSource的列的颜色?

C# 如何以编程方式更改DataGridView中绑定到具有自定义类的BindingSource的列的颜色?,c#,.net,winforms,datagridview,C#,.net,Winforms,Datagridview,BindingSource的DataSource是一个具有某些公共属性的类。网格的列是这样创建的: DataGridViewTextBoxColumn vendorIDColumn = new DataGridViewTextBoxColumn() { MinimumWidth = 50, FillWeight = 20, DataPropertyName = "

BindingSource的DataSource是一个具有某些公共属性的类。网格的列是这样创建的:

DataGridViewTextBoxColumn vendorIDColumn =
           new DataGridViewTextBoxColumn()
           {
               MinimumWidth = 50,
               FillWeight = 20,
               DataPropertyName = "VendorID",
               HeaderText = "Vendor ID",
               AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells
           };
        grid.Columns.Add(vendorIDColumn);
DataGridView的属性AutoGenerateColumns设置为“false”。
已尝试grid.Columns[0]。DefaultCellStyle.BackColor=Color.Red;但是它不起作用。

您可以设置DataGridViewTextBoxColumn的背景色吗

DataGridViewTextBoxColumn vendorIDColumn =
       new DataGridViewTextBoxColumn()
       {
           MinimumWidth = 50,
           FillWeight = 20,
           DataPropertyName = "VendorID",
           HeaderText = "Vendor ID",
           AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
           BackColor = Color.Red;
       };
    grid.Columns.Add(vendorIDColumn);

即使我可以在创建/添加列时设置颜色,我也需要能够在执行期间以不同的方法更改颜色。分析绑定数据,然后更改颜色在这种情况下,您希望在绘制内容时侦听事件。无法在家中回忆起事件名称,但当它出现时,您会更改背景颜色。