关于combobox的绑定,网上搜了一遍,绝大多数博文介绍的是绑定combobox到字典类型或者一个拥有id以及名称两个属性的对象。本文介绍的是将combobox的选中项单独绑定到一个string类型的属性。
绑定的目标
再次说明一下,本文介绍的是将combobox的选中项单独绑定到一个string类型的属性。
例如,下面的情况:
- xaml前端界面
|
|
- 后台属性
|
|
需要做便是将类中string类型的属性myProperty绑定到combobox,绑定后,选中变化,myProperty属性的值随之改变为选中项的名称。myProperty属性值改变时,combobox界面随之更新显示myProperty的值。
如何绑定
下面介绍如何绑定,在介绍绑定之前,先了解combobox的一些属性。在wpf中,combobox拥有三个关于选中的属性以及一个关于显示的属性。它们分别为:
|
|
通常情况下,当你绑定SelectedValue属性时,需要指定SelectedValuePath属性。这三个属性都拥有者不同的属性值,当你绑定value时就必须指定value的Path。如在这次的绑定介绍中,如果直接使用 MyProperty绑定SelectedItem或SelectedValue,则会出现的问题是 MyProperty得到的值为System.Windows.Controls.ComboBoxItem:A 之类的。
正确的绑定方法如下
|
|
绑定SelectedValue属性并且指定其对应的SelectedValuePath为content(文本内容),如此便可以成功将combobox的选中项单独绑定到一个string类型的属性。
本文由芒果浩明发布,转载请注明来源。 本文链接:https://blog.mangoeffect.net/donet/bind-string-property-to-combobox-selecteditem.html