我的目标是在我的DataGridView上拥有友好的验证流程。
当用户为某个单元格输入不正确的值时,我希望能够:
- 退出编辑模式 - 恢复修改(即从单元格中恢复原始值) - 显示错误消息
我目前正在使用CellValidating事件来防止单元格更新其值,但我无法退出编辑模式。然后,该单元格将等待正确的值,并且不会允许用户仅取消并恢复操作...
以下是验证方法的示例代码:
当用户为某个单元格输入不正确的值时,我希望能够:
- 退出编辑模式 - 恢复修改(即从单元格中恢复原始值) - 显示错误消息
我目前正在使用CellValidating事件来防止单元格更新其值,但我无法退出编辑模式。然后,该单元格将等待正确的值,并且不会允许用户仅取消并恢复操作...
以下是验证方法的示例代码:
private void dataGridViewMsg_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
[...] // Here, treatment determines is the new cell value isValid or not
if (!isValid)
{
MessageBox.Show("The value entered is incorrect.", "Modification aborted");
e.Cancel = true;
dataGridViewMsg[e.ColumnIndex, e.RowIndex].IsInEditMode = false; // Someway, what I would like to do
return;
}
}
我该如何操作才能使单元格恢复其原始值,而无需跟踪此值?