Добрый день!
Я много читал о динамическом c изменении цвета ячеек, но не нашел решения моей проблемы. В своем проекте я использовал DataGridView 32x32. Все значения являются целыми числами, также я изменил формат ячейки по умолчанию на Numeri c.
Этот код без проблем выполняет рисование градиентом:
void AFRTableGraient()
{
for (int i = 0; i < dataGridViewTAF.ColumnCount; i++)
{
for (int j = 0; j < dataGridViewTAF.RowCount; j++)
{
try
{
if (dataGridViewTAF.Rows[i].Cells[j].Value == null)
{
break;
}
dataGridViewTAF.Rows[i].Cells[j].Style.BackColor = Color.FromArgb(0x10 + (int)dataGridViewTAF.Rows[i].Cells[j].Value, 0x88 + (int)dataGridViewTAF.Rows[i].Cells[j].Value, 0x88 + (int)dataGridViewTAF.Rows[i].Cells[j].Value);
}
catch
{
break;
}
}
}
dataGridViewTAF.Update();
dataGridViewTAF.Refresh();
}
Но мне нужно изменить цвет ячейки после изменения значения.
Я использовал события CellFormatting, KeyDown, CellLeave, CellPainting, Enter и т. д. c, но результата не было. Когда я пытался использовать метод CellPainting, приложение зависало, но обновления цвета не происходило. Кроме того, я пробовал использовать «таймер», но все равно ничего.
Я знаю, есть простой способ решения, но мне нужна помощь, чтобы его найти.
Спасибо!