У меня есть DataGridView, который связывается со списком объекта. Это имеет некоторые столбцы, которые может отредактировать пользователь. Существуют определенные исходные данные, которые не позволяются для строки в целом. Как я могу откатывать, если пользователь вводит недопустимые исходные данные в некоторую ячейку. Я пытался использовать обработчик событий RowValidating, но это не назвали после того, как значение ячейки было изменено. Даже когда я implemet CellValueChanged, я все еще не могу откатывать изменения.... Любая идея, как выполнить это
После завершения редактирования и подтверждения изменений вы можете сделать следующее:
DataTable dt = this.dataGridView.DataSource as DataTable;
dt.RejectChanges();
From MSDN :
Когда вызывается метод DataTable.RejectChanges , любые строки все еще в режиме редактирования отменить свои правки. Новые строки удаляются. Измененные и удаленные строки возвращаются в исходное состояние (DataRowState.Unchanged).