如何使用C#将文本框值更新为bindingsource?

LK *_*ung 3 c# textbox bindingsource winforms

考虑以下代码:

txtLastModifyUserID.DataBindings.Add("Text", c_bsDataSetSource, "LastModifyUserID");
txtLastModifyUserID.Text = "1234";
Run Code Online (Sandbox Code Playgroud)

为什么不能更新源?

Lar*_*ech 11

在控件开始失去焦点之前,DataBinding通常不会写入值.由于您以编程方式更新TextBox,因此DataBinding不知道有更新内容.

编写代码的方式,您必须自己调用该WriteValue()方法(假设TextBox上只存在1个数据绑定):

txtLastModifyUserID.DataBindings.Add("Text", c_bsDataSetSource, "LastModifyUserID");
txtLastModifyUserID.Text = "1234";
txtLastModifyUserID.DataBindings[0].WriteValue();
Run Code Online (Sandbox Code Playgroud)