在WINFORM控件绑定数据源时,有时候希望在控件给值时就立即更新到数据源的表中。但在WINFORM控件必须要做完EndCurrentEdit后,值才会更新.而控件在处理方式上又不一致.比如:TextBox是在leave的时候做EndCurrentEdit.而CheckBox的时候又要在checkedChange的时候变化。
为了解决这个问题。.net提供一个DataSourceUpdateMode的属性。当Binding.DataSourceUpdateMode=DataSourceUpdateMode.OnPropertyChanged时,只要你绑定的值进行更改的时候数据源的值就立即更新。不过这个会有一个问题,就是数据源状态的变化,在给了这个属性值后,虽然数据源已经得到了更改后的值,但是数据源的状态没有改变。切忌。如果正该数据源表进行状态判定前必须做EndCurrentEdit.