DataGridView.CellValueChanged не стреляет по привязанному DataGridView - PullRequest
3 голосов
/ 05 апреля 2010

Когда я изменяю значение программно в DataTable, с которым связан мой DataGridView, соответствующее событие CellValueChanged не запускается для DataGridView. Я пытаюсь изменить цвет фона ячейки на основе значения ячейки, когда DataTable заполняется данными, не просматривая каждую строку и не проверяя каждое значение.

Ответы [ 2 ]

2 голосов
/ 05 апреля 2010

Вы изменяете DataTable напрямую и ожидаете, что событие DataGridView будет запущено? Я предлагаю вам изменить значение ячейки программно как:

DataGridView[ColumnIndex, RowIndex].Value = NewValue;

Кроме того, вам придется позвонить DataGridView.CommitEdit(), чтобы зафиксировать значения в DataTable. Это должно вызвать событие CellValueChanged.

http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.cellvaluechanged.aspx

0 голосов
/ 08 июля 2010

Изменение цвета фона ячеек должно быть сделано в RowPrePaint-Event, оно будет запущено, если строка будет перекрашена после изменения значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...