【发布时间】:2011-02-22 10:22:41
【问题描述】:
以下代码按您的预期工作 - 当用户在下拉列表中选择新项目时,模型上的 MyProperty 会更新。
comboBox1.DataBindings.Add("SelectedValue", myModel, "MyProperty", true,
DataSourceUpdateMode.OnPropertyChanged);
但是,以下内容的工作方式不同,并且在输入焦点移动到表单上的另一个控件之前不会触发模型更新:
comboBox1.DataBindings.Add("SelectedItem", myModel, "MyProperty", true,
DataSourceUpdateMode.OnPropertyChanged);
有人知道为什么吗?我什至不知道从哪里开始调查原因。指出正确方向以开始调查或直接解释将同样受到赞赏。
除此之外:出于我的目的,我最终绑定到SelectedItem 和SelectedValue。通过这种方式,我可以根据 UI 更改(通过SelectedValue 绑定)获得即时模型更新,并根据编程模型更改(通过SelectedItem 绑定)获得 UI 更新。
【问题讨论】:
标签: c# winforms data-binding combobox