C# 更新失去焦点时的数据绑定
我已经看到WPF有一个属性,允许在控件失去焦点后进行数据绑定,winforms有类似的功能吗 我遇到了一个问题,当更新一个数据绑定值时,整个源被更改,而不是单个属性 这给我带来了一个问题,因为我有一个C# 更新失去焦点时的数据绑定,c#,winforms,data-binding,C#,Winforms,Data Binding,我已经看到WPF有一个属性,允许在控件失去焦点后进行数据绑定,winforms有类似的功能吗 我遇到了一个问题,当更新一个数据绑定值时,整个源被更改,而不是单个属性 这给我带来了一个问题,因为我有一个复选框,当更改选中状态时,会更新另一个具有来自同一数据绑定源的数据绑定的源,这使得我的复选框永远不会更改值(或者说它会将其更改回来) 我已经创建了一个示例来演示这一点。(带有复选框和文本框的基本表单) 或者,是否有其他方法来处理我的数据绑定,只更改数据绑定属性值而不更改源?最后,我不得不使用Chec
复选框
,当更改选中状态时,会更新另一个具有来自同一数据绑定源的数据绑定的源,这使得我的复选框永远不会更改值(或者说它会将其更改回来)
我已经创建了一个示例来演示这一点。(带有复选框和文本框的基本表单)
或者,是否有其他方法来处理我的数据绑定,只更改数据绑定属性值而不更改源?最后,我不得不使用
CheckedChanged
事件手动更新数据绑定
例如,使用我的示例程序的源代码
checkBox1.CheckedChanged += (s, e) => {
dc.BooleanVal = ((CheckBox)s).checked;
customControl1.Text = "3";
label1.Text = dc.BooleanVal.ToString(); };
我不太明白你想要什么。数据绑定应该在控件和源之间绑定数据。是否要在不更改源的情况下更改控件中的某些值?一些具体的例子就好了。@King,链接提供了一个完整的例子。在本例中,在第8行,您可以看到它调用了“Text”(文本被覆盖),这最终会更改textbox的数据绑定值,从而将复选框重置为源值,因此不允许复选框具有不同的值value@sayse与WPF相比,winforms的数据绑定是可笑的。我认为,如果不对文本框或类似的东西进行子类化,您将无法实现这一点。@highcore-我很害怕。。我在想我需要将复选框绑定源移到别处..请参阅和