在 C# 中两个关于 DataGridView 的简单问题,请大侠帮忙看看。
第一个问题:当 DataGridView 经过编辑后,怎样在单击取消按钮时立刻返回到 DataGridView 编辑前的数据进行显示?
第二个问题:
当 DataGridView 动态绑定数据后,我编写一段代码来添加新行,但系统提示是不能使用编程方法来添加数据的,请问可否在代码中利用其他方法来添加新行并填充数据? --------------------编程问答-------------------- Answer1:
下面三种方法试试:
DataGridView.CancelEdit();
BindingSource.CancelEdit();
((DataRowView)BindingSource.Current).Row.RejectChanges();
Anser2:
BindingSource.AddNew(); --------------------编程问答-------------------- 能否具体一点,谢谢!!! --------------------编程问答-------------------- 1L 回答的第一个问题是 如果要达到你那种效果,在使用bindingSource的情况下,就需要使用
我的这段代码应该可以满足你的要求:(bs 为bindingSource的对象)
bs.CurrencyManager.CancelCurrentEdit();
((System.Data.DataTable)bs.DataSource).RejectChanges();
至于 第二个问题 我有一个解决的方法就是直接在datatable里边写,然后再次更新datagridview应该就可以了,不过这个我没有试过 但是公司里边有人试验过 可以 你可以考虑一下 --------------------编程问答-------------------- 不过 1L 提到的bs.addNew()方法到可以试验一下 在你需要添加新行的位置 --------------------编程问答-------------------- 菜鸟学习中 --------------------编程问答-------------------- 好像回答的不够详细,可能我太菜鸟了。
第一个问题我已解决:可以在DataTable里直接写DataTable["表名"].RejectChanges()就可以了。
第二个问题能否详细解释以下?谢谢! --------------------编程问答-------------------- 在 C# 中两个关于 DataGridView 的简单问题,请大侠帮忙看看。
现在的人真牛,既然是简单问题,还来问什么? --------------------编程问答-------------------- 是否没人能解决第二个问题呢? --------------------编程问答-------------------- 还是没人来解答呀?
补充:.NET技术 , C#