当前位置:  开发笔记 > 编程语言 > 正文

如果输入不正确,如何回滚gridview中的更改

如何解决《如果输入不正确,如何回滚gridview中的更改》经验,为你挑选了2个好方法。

我有一个绑定到对象列表的DataGridView.它有一些用户可以编辑的列.某些输入不允许作为一个整体的行.如果用户在某个单元格中输入无效输入,我该如何回滚.我尝试使用RowValidating事件处理程序,但在更改单元格值后未调用它.即使我实现CellValueChanged,我仍然无法回滚更改.......不知道如何实现这一目标



1> mihai71..:

存在数据绑定时,对我来说它适用于:

myBindingSource.CancelEdit();
myDataGridView.RefreshEdit();


`datagridview.CancelEdit()`非常适合我!

2> Kyle Rozendo..:

编辑完成并验证更改后,您可以执行以下操作:

DataTable dt = this.dataGridView.DataSource as DataTable;
dt.RejectChanges();

来自MSDN:

调用DataTable.RejectChanges方法时,仍处于编辑模式的任何行都将取消其编辑.删除新行.已修改和已删除的行将返回其原始状态(DataRowState.Unchanged).


这意味着它无法将DataSource转换为DataTable.
推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有