C# Windows 表单数据绑定
C# Windows Forms Data Binding
我在 Windows 表单中使用 Visual c#,但我遇到了困难。
myTxtBx.DataBindings.Add(new Binding("Text", myBindingSource, "Name", true, DataSourceUpdateMode.OnPropertyChanged, string.Empty));
我的问题是 myTxtBx
根本没有收到任何更新;我实际上将它更改为文本框,因为它也不能与标签一起使用。
在代码中,我为 myTxtBx 分配了一个值,因为在这种情况下必须这样做。
我需要一种方法让绑定从文本框中获取值,尽管根本没有更新。
我已经尝试将它更改为 DataSourceUpdateMode.OnValidation
并强制它在执行数据库操作之前进行验证,但 DataBindings 仍然没有取值。
我也试过使用 WriteValue()
但似乎也没有用..
如有任何建议,我们将不胜感激!
在样本上检查了您的问题。
我有 Form
和两个 TextBox
,绑定看起来像:
this.textBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource1, "Text", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.textBox2.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource1, "Text", true));
绑定源 this.bindingSource1
是 System.Windows.Forms.BindingSource
的类型
这里是设置绑定源数据的代码:
_bindedObject = new DataObject{ Text = "Initialized value"};
bindingSource1.DataSource = _bindedObject;
一个 _bindedObject
很简单 class 和 属性 文本:
[Serializable]
public class DataObject
{
public string Text { get; set; }
}
textBox1
不断更新包含文本的每次更改的数据,并且 textBox2
正在刷新。
textBox2
正在失去焦点(导致验证)或调用 bindingSource1.EndEdit();
时更新数据。
我在 Windows 表单中使用 Visual c#,但我遇到了困难。
myTxtBx.DataBindings.Add(new Binding("Text", myBindingSource, "Name", true, DataSourceUpdateMode.OnPropertyChanged, string.Empty));
我的问题是 myTxtBx
根本没有收到任何更新;我实际上将它更改为文本框,因为它也不能与标签一起使用。
在代码中,我为 myTxtBx 分配了一个值,因为在这种情况下必须这样做。
我需要一种方法让绑定从文本框中获取值,尽管根本没有更新。
我已经尝试将它更改为 DataSourceUpdateMode.OnValidation
并强制它在执行数据库操作之前进行验证,但 DataBindings 仍然没有取值。
我也试过使用 WriteValue()
但似乎也没有用..
如有任何建议,我们将不胜感激!
在样本上检查了您的问题。
我有 Form
和两个 TextBox
,绑定看起来像:
this.textBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource1, "Text", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
this.textBox2.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource1, "Text", true));
绑定源 this.bindingSource1
是 System.Windows.Forms.BindingSource
的类型
这里是设置绑定源数据的代码:
_bindedObject = new DataObject{ Text = "Initialized value"};
bindingSource1.DataSource = _bindedObject;
一个 _bindedObject
很简单 class 和 属性 文本:
[Serializable]
public class DataObject
{
public string Text { get; set; }
}
textBox1
不断更新包含文本的每次更改的数据,并且 textBox2
正在刷新。
textBox2
正在失去焦点(导致验证)或调用 bindingSource1.EndEdit();
时更新数据。