日期:2014-05-20  浏览次数:21047 次

【请教】在WinForm中,我用BindingSource将数据源绑定到各控件,关于控件值修改的问题
在WinForm中,我用BindingSource将数据源绑定到各控件后,BindingSource只有CurrentItemChanged()事件,没有CurrentItemChanging()事件,所以只有控件值更改完毕、等输入焦点离开该控件后才能捕捉到数据源的值发生了变化,这样对于数据修改很不方便

不知道各位大侠有没有直接操作BindingSource办法判断控件值一开始发生变化就能捕捉到这个消息?

因为控件很多,而且不定,所以不想通过判断每个控件的值来实现

谢谢!

------解决方案--------------------
不用自动的绑定方法,而手动的来控制程序的运行,是灵活的.NET用法.
------解决方案--------------------
顶一楼
------解决方案--------------------
TO:不知道各位大侠有没有直接操作BindingSource办法判断控件值一开始发生变化就能捕捉到这个消息?


似乎没有...
------解决方案--------------------
to 不知道各位大侠有没有直接操作BindingSource办法判断控件值一开始发生变化就能捕捉到这个消息?
因为控件很多,而且不定,所以不想通过判断每个控件的值来实现

支持绑定并能支持修改的control在winform好像不多,据我所知好像就是datagrid和textbox。
对于datagrid,重载其的onedit事件来进行处理;
对于后者,你可以通过其的keypress相关的事件进行处理,或者参看如下的文章来处理
I programatically change a bound TextBox value, but the value does not get pushed back into the bound datasource. How can I make sure the DataSource is updated?
http://www.syncfusion.com/FAQ/WindowsForms/FAQ_c43c.aspx#q1017q