System.Window.Forms.CheckBox数据绑定不会被击中

时间:2016-10-07 06:30:52

标签: c# winforms checkbox data-binding

我遇到System.Window.Forms.CheckBox数据绑定问题。我生成一个复选框,然后通过

将它的值映射到BindingSource上的属性

复选框→属性→数据绑定→选中→BindingSource - PropertyValue

然后,当我点击复选框时,我会触发CheckedChanged事件。但是,单击时BindingSource属性不会更新。因此,我必须使用复选框设计 - >用于获取复选框值的名称。绑定应该以另一种方式完成吗?我可以用这种方式映射字符串没有问题,但由于某种原因,复选框bool似乎更难映射。

1 个答案:

答案 0 :(得分:2)

设置数据绑定时,Data Source Update Mode的默认值为OnValidation,这意味着在验证控件属性时会更新数据源。因此,在当前状态下,如果将焦点移动到另一个控件,数据绑定将更新数据源属性。

如果您希望在控件属性的值发生更改时更新数据源,则应将设置更改为OnPropertyChanged

您可以使用设计师以这种方式更改设置:

  1. 选择控件并在属性网格中,展开(DataBindings),然后点击(高级)中的 ... 打开格式化和高级绑定

  2. 在窗口中,从左侧属性列表中,选择要为其执行高级设置的属性。

  3. 在右窗格中,从数据源更新模式中选择 OnPropertyChanged 。要了解有关其他可用值的更多信息,请查看DataSourceUpdateMode文档。