textbox绑定数据的问题
textbox绑定数据后,然后在textbox修改数据,修改的数据被同时更新到绑定的数据表中,这时使用数据表的.rejectChanges()方法取消更改,请问如何将textbox中的数据更新显示为修改前的数据?我用
this.BindingContext[dataset.name,tablename].Position++,但是不行,请高手指教。
问题点数:100、回复次数:8Top
1 楼Lcindep110(Descovering YourSelf)回复于 2006-03-13 18:14:53 得分 2
或许你可以把原来的数据存在ViewState中,
如果取消更新,则让TextBox的显示数据为ViewState保存的数据Top
2 楼WindowsBoy(程序人生)回复于 2006-03-13 18:23:34 得分 2
如果你的绑定有一个私有方法的话,那就在调用一次吧! 即重新绑定一次。Top
3 楼jilon321(小松鼠JL)回复于 2006-03-13 18:38:02 得分 2
ds.clear()
adtable.fill(ds)
反正我用这个方法行,因为数据适配器中的
数据还没有updateTop
4 楼califord(远方)回复于 2006-03-13 18:41:55 得分 0
更新以后重新绑定一下Top
5 楼WindowsBoy(程序人生)回复于 2006-03-13 18:42:18 得分 2
如果数据量不太的话就在到DB中取一次,然后在重新绑定控件。这样感觉比较省事!Top
6 楼lidong6(立冬)回复于 2006-03-13 19:51:17 得分 2
textBox1.DataBindings.Clear清空后再绑定一次试试.
Top
7 楼bodytree(沙漠中的小鱼)回复于 2006-03-14 14:00:12 得分 0
谢谢,我再试试Top
8 楼godson_h(社长)回复于 2006-03-14 18:07:40 得分 90
搂主试试这个办法吧:
在更新前,先用BindingContext的SuspendBinding()方法挂断绑定,更新后,再用ResumeBinding()方法重启绑定,如:
this.BindingContext[ds,tablename].SuspendBinding();
ds.Tables[tablename].RejectChanges();
this.BindingContext[ds,tablename].ResumeBinding();
这样应该就可以及时更新TextBox中的显示Top




