以下代码正如您所料 - 当用户在下拉菜单中选择新项目时,模型上的MyProperty
会更新。ComboBox SelectedItem vs SelectedValue
comboBox1.DataBindings.Add("SelectedValue", myModel, "MyProperty", true,
DataSourceUpdateMode.OnPropertyChanged);
以下,但是,不相同的方式工作和型号更新不会被触发,直到输入焦点移动到另一个控件的形式:
comboBox1.DataBindings.Add("SelectedItem", myModel, "MyProperty", true,
DataSourceUpdateMode.OnPropertyChanged);
有谁知道为什么?我甚至不知道从哪里开始调查原因。同样赞赏指向正确的方向开始调查或彻底解释。
Aside:出于我的目的,我结束了对SelectedItem
和SelectedValue
的约束。这样,我可以基于UI更改(通过绑定SelectedValue
)获取即时模型更新,并根据程序化模型更改(通过SelectedItem
绑定)获取UI更新。
我结束了设立两个绑定 - 一个的SelectedValue和一个的SelectedItem和没”除此之外,还需要任何自定义代码。 :) – 2010-05-21 17:01:58
@Anna很高兴听到你有它的工作:) – 2010-05-21 17:45:13