更新丢失焦点的数据绑定

本文关键字:数据绑定 焦点 更新 | 更新日期: 2023-09-27 18:17:17

我看到WPF有一个UpdateSourceTrigger属性,允许在控件失去焦点后进行数据绑定,winforms有类似的东西吗?

我遇到了一个问题,当更新一个数据绑定值时,整个源被改变,而不是单个属性。

这给我带来了一个问题,因为我有一个CheckBox,当改变复选状态时,更新另一个源,从相同的数据绑定源的数据绑定,这使得我的复选框永远不会改变值(或者更确切地说,它会改变它回来)

我已经创建了一个示例程序来演示这一点。(带有复选框和文本框的基本表单)

或者,是否有另一种方法来处理我的数据绑定,仅使数据绑定属性值更改而不是源?

更新丢失焦点的数据绑定

最后,我不得不使用CheckedChanged事件手动更新数据绑定。

例如,使用源代码为我的示例程序。

checkBox1.CheckedChanged += (s, e) => { 
  dc.BooleanVal = ((CheckBox)s).checked;
  customControl1.Text = "3"; 
  label1.Text = dc.BooleanVal.ToString(); };