更改datagridview单元格中编辑的单元格
问题描述:
我有一个DataGridView
单元格包含字符串。如果单元格内容发生更改,我想更改此单元格的background
。什么事件最适合做这件事?更改datagridview单元格中编辑的单元格
我第一次尝试CellValueChanged
事件,但是这甚至通过单击此单元格而不编辑内容来调用。
这里是我的功能代码:
private void GVCrs_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
this.GVCrs.Rows[e.RowIndex].Cells[e.ColumnIndex].Style.BackColor = Color.Orange;
}
问候 R4z0R
答
你可以尝试CellBeginEdit
和CellEndEdit
事件,
string beforeValue = "";
private void dataGridView1_CellBeginEdit(object sender, DataGridViewCellCancelEventArgs e)
{
beforeValue = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
}
private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString() != beforeValue)
{
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Style.BackColor = Color.Red;
beforeValue = "";
}
}
+0
谢谢,这工作正常:) – R4z0R
你可以发布你CellValueChanged事件试过的代码? –