Я отчаянно пытаюсь понять, как изменить цвет фона отдельной ячейки в dataGridView формы winforms.У меня есть два столбца: если я изменяю содержимое во втором столбце, я хочу, чтобы ячейка в первом столбце этой строки соответственно меняла фон.
private void dataGridView1_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
{
if (e.ColumnIndex != 0 || e.RowIndex == -1)
return;
if (dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString() == "Red")
e.CellStyle.BackColor = Color.Red;
else
e.CellStyle.BackColor = Color.White;
}
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex != 1 || e.RowIndex == -1)
return;
// dataGridView1.Rows[e.RowIndex].Cells[0]. ???
}
Первый обработчик события устанавливает backColor ячеекв первом столбце, если они окрашены.Обработчик второго события должен указать первой ячейке рисовать, если значение изменилось.Если я изменяю ширину столбцов, он рисует правильный цвет, поэтому первый обработчик выполняет свою работу.Но как вызвать рисование ячейки?
Спасибо за помощь.