2012-04-06 63 views

回答

11

DataBinding通常不会写入值直到控件开始失去焦点后。由于您以编程方式更新TextBox,因此DataBinding不知道有什么要更新。

你写代码的方式,你就必须自己调用WriteValue()方法(假设存在于文本框只有1绑定):

txtLastModifyUserID.DataBindings.Add("Text", c_bsDataSetSource, "LastModifyUserID"); 
txtLastModifyUserID.Text = "1234"; 
txtLastModifyUserID.DataBindings[0].WriteValue(); 
+0

谢谢你, 它的工作,谢谢,有帮助 – 2012-04-07 01:14:29

+0

谢谢,它是为我工作 – 2017-05-30 06:50:43

0

我假设你必须在DataSourceUpdateMode上指定OnPropertyChanged

+0

感谢,但它简化版,工作, 源不能被更新我也尝试改变DataSourceUpdateMode到onvalidation,然后调用DoValidate(),它也不起作用 – 2012-04-06 12:14:15

0

我认为你是几乎没有。只需将您的绑定更改为“值”而不是“文本”即可。当你以编程方式改变这一点时,只要数据源被更新,人眼就会捕获更新。也请指定DataSourceUpdateMode.OnPropertyChanged

相关问题