我遇到System.Window.Forms.CheckBox
数据绑定问题。我生成一个复选框,然后通过
复选框→属性→数据绑定→选中→BindingSource - PropertyValue
然后,当我点击复选框时,我会触发CheckedChanged
事件。但是,单击时BindingSource
属性不会更新。因此,我必须使用复选框设计 - >用于获取复选框值的名称。绑定应该以另一种方式完成吗?我可以用这种方式映射字符串没有问题,但由于某种原因,复选框bool似乎更难映射。
答案 0 :(得分:2)
设置数据绑定时,Data Source Update Mode
的默认值为OnValidation
,这意味着在验证控件属性时会更新数据源。因此,在当前状态下,如果将焦点移动到另一个控件,数据绑定将更新数据源属性。
如果您希望在控件属性的值发生更改时更新数据源,则应将设置更改为OnPropertyChanged
。
您可以使用设计师以这种方式更改设置:
选择控件并在属性网格中,展开(DataBindings),然后点击(高级)中的 ... 打开格式化和高级绑定。
在窗口中,从左侧属性列表中,选择要为其执行高级设置的属性。
在右窗格中,从数据源更新模式中选择 OnPropertyChanged 。要了解有关其他可用值的更多信息,请查看DataSourceUpdateMode文档。