社区
C#
帖子详情
使用bindingSource 可以对数据进行修改的取消吗?
tank_2009
2009-10-22 02:14:40
数据的修改包括了,修改,删除,新增
但操作都没有提交到数据库
当点击“取消”后,可以还原到未修改之前吗?
...全文
617
15
打赏
收藏
使用bindingSource 可以对数据进行修改的取消吗?
数据的修改包括了,修改,删除,新增 但操作都没有提交到数据库 当点击“取消”后,可以还原到未修改之前吗?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tank_2009
2009-10-22
打赏
举报
回复
MSDN改版了,呵呵
刚才上去看到他对 Rejectchanges()的解释:
DataSet.RejectChanges 方法
回滚自创建 DataSet 以来或上次调用 DataSet.AcceptChanges 以来对其进行的所有更改。
我想这个应该就是我想要的了
Dobzhansky
您觉得最好不要用这个吗?
Dobzhansky
2009-10-22
打赏
举报
回复
如果硬要来,
bindingNavigator1.BindingSource.DataSource 是 DataTable 还是 DataSet,
拿到他们, 调用 DataTable , DataSet 的 RejectChanges()
不过这样就强类型化了, 终端业务应用这样干可以
Framework / toolkit 最好不要这样.
tank_2009
2009-10-22
打赏
举报
回复
[Quote=引用 12 楼 dobzhansky 的回复:]
事件中
bindingNavigator1.BindingSource.CancelEdit();
bindingNavigator1.Refresh();
[/Quote]
CancelEdit只能取消对当前单元格的修改。
Dobzhansky
2009-10-22
打赏
举报
回复
事件中
bindingNavigator1.BindingSource.CancelEdit();
bindingNavigator1.Refresh();
tank_2009
2009-10-22
打赏
举报
回复
[Quote=引用 9 楼 dobzhansky 的回复:]
拖入 BindingNavigator , 看看生成的代码, 增加一个按钮不是难事
我就定制了一下, 使得 BindingNavigator 的 添加和删除操作可以取消
[/Quote]
增加一个按钮当然不难,但是怎样实现他的功能?
猿来是我
2009-10-22
打赏
举报
回复
没有提交到数据库前可以的。
Dobzhansky
2009-10-22
打赏
举报
回复
拖入 BindingNavigator , 看看生成的代码, 增加一个按钮不是难事
我就定制了一下, 使得 BindingNavigator 的 添加和删除操作可以取消
tank_2009
2009-10-22
打赏
举报
回复
[Quote=引用 7 楼 dobzhansky 的回复:]
取消操作的 UI 部件需要你自己提供吧
按钮, 菜单都行,
点击后执行 BindingSource 的 CancelEdit()
那个 BindingNavigator 有没有撤销按钮, 忘记了, 记得好似没有.
[/Quote]
确实 BindingNavigator 没有撤销按钮,如果只能自己写的话,貌似很难。
Dobzhansky
2009-10-22
打赏
举报
回复
取消操作的 UI 部件需要你自己提供吧
按钮, 菜单都行,
点击后执行 BindingSource 的 CancelEdit()
那个 BindingNavigator 有没有撤销按钮, 忘记了, 记得好似没有.
tank_2009
2009-10-22
打赏
举报
回复
我现在已经把 dataTable绑定到 bindingSource,然后 DataGridView与bindingSource绑定在一起
现在我操作 dataGridView , 做了一引起数据的修改,但是怎样点击“取消”时,还原数据呢?
Dobzhansky
2009-10-22
打赏
举报
回复
BindingSource 是一个好用的功能代理,
有
EndEdit() / CancelEdit / AddNew
可以使用.
最终的操作还是过渡到数据源上,
直接对数据源修改也是可以的,
BindingSource 也能感知到(数据源必须能激发变动事件)修改,
同时反映的绑定的界面元素上,
其实真正的数据绑定能力还是来自底下的数据源,
BindingSource 只是一个一致性的数据绑定界面.
如果学习数据绑定, 可以参考 System.Data.DataView ,
DataTable 本身, 绑定能力有限.
zzxap
2009-10-22
打赏
举报
回复
保存的时候用foreach循环添加该table的数据到数据库
zzxap
2009-10-22
打赏
举报
回复
添加:
DataTable cart = new DataTable();
if (Session["shopingcar"] == null)
{
cart.Columns.Add("商品编号", typeof(int));
cart.Columns.Add("商品名称", typeof(string));
cart.Columns.Add("商品单价", typeof(double));
cart.Columns.Add("商品数量", typeof(int));
Session["shopingcar"] = cart;
}
cart = (DataTable)Session["shopingcar"];
DataRow dr = cart.NewRow();
dr["商品编号"] = model.ID;
dr["商品名称"] = model.产品名称;
dr["商品单价"] = double.Parse(model.价格);
dr["商品数量"] = 1;
cart.Rows.Add(dr);
修改:
必须这样:
DataRow row=myTable.Rows[0];
row.BeginEdit();
row.[ "userName "]= "aa ";
row[ "pwd "]= "121 ";
row.EndEdit();
删除某行
代码如下:
删除第二行
myTable.Rows.RemoveAt(1);
zzxap
2009-10-22
打赏
举报
回复
你可以在datatable里面做。
zhouyanfss
2009-10-22
打赏
举报
回复
当然了,在后台把你的绑定函数重新运行就可以了!
直接在DataGridView表格中
修改
数据
(2.0)
直接在DataGridView表格中
修改
数据
C#ComboBox控件“设置 Data
Source
属性后无法
修改
项集合”的解决方法
主要介绍了C#ComboBox控件“设置 Data
Source
属性后无法
修改
项集合”的解决方法 ,需要的朋友可以参考下
使用
binding
source
数据
绑定时datagridview单元格无法及时刷新的问题
数据
绑定设置:
binding
Source
1.Data
Source
= dataset.Tables[0]; dataGridView1.Data
Source
=
binding
Source
1; checkBox1.Data
Binding
s.Add("Checked", bin
Binding
Source
控件
Binding
Source
控件
Binding
Source
控件是.NET Compact Framework 2.0提供的新控件之一。
Binding
Source
控件与
数据
源建立连接,然后将窗体中的控件与
Binding
Source
控件建立绑定关系来实现
数据
绑定,简化
数据
绑定的过程。
Binding
Source
控件即是一个连接后台
数据
库的渠道,同时又是一个
数据
源,因为
Binding
Source
控件即支持向
Binding
Source
控件的
使用
1、定位到指定记录:
Find方法根据指定属性和关键字
进行
查找,并返回第一个匹配对象的Index if (t_User
Binding
Source
.SupportsSearching == true) { int index = t_User
Binding
Source
.Find("UserNo", "003"); if (index != -1)
C#
111,098
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章