我正在使用此事件在检查CheckBoxColumn时对该行进行备注,因此我还要使用“Value”属性替换“以编程方式”,来自同一行的当前单元格[6]值,但是它失败了默认情况下,“readOnly”属性为=“true”。
从LINQ2SQL查询中检索DataGridView1.DataSource。
void updateStyle_DataGridViewCellEventArgs(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex == -1)
return;
else
{
DataGridView dgv = sender as DataGridView;
int vCHK = e.ColumnIndex;
if (vCHK != 0)
return;
else
{
DataGridViewCheckBoxCell temp = (DataGridViewCheckBoxCell)dgv.Rows[e.RowIndex].Cells[0];
if ((bool)temp.EditedFormattedValue == true)
{
DataGridViewTextBoxCell xrow = (DataGridViewTextBoxCell)dgv.Rows[e.RowIndex].Cells[6];
xrow.ReadOnly = false;
xrow.Value = "P";
xrow.OwningRow.DefaultCellStyle.BackColor = Color.Wheat;
}
else
{
temp.OwningRow.DefaultCellStyle.BackColor = Color.White;
}
}
}
}
答案 0 :(得分:1)
我会在DataSource中找到实际的对象/行,在那里翻转布尔值,然后重新绑定网格。然后,您可以在CellFormatting事件中设置BackColor。