将WPFcombobox绑定到用户设置属性
我在WPF中有一个带有4个静态值的combobox:
Alt Shift Ctrl Win
我想在用户设置中使用简单的字符串属性连接此combobox的选定值。 这样做的一半:所选的值完美地写入Settings.Default.KeyModifier …但是在重新启动应用程序后,combobox的选定值未设置…尽管所有其他控件(编辑,复选框)绑定了相同的值正确设置其他属性的方式。
使用绑定属性的值填充combobox是否有些神秘感?
或者我必须在代码后面手动启动时完成整个选择过程?
由于您没有向ComboBox添加字符串,而是ComboBoxItems,因此您还必须设置其SelectedValuePath
属性:
Alt Shift Ctrl Win
或者将字符串添加到ComboBox,并使用SelectedItem
而不是SelectedValue
:
xmlns:sys="clr-namespace:System;assembly=mscorlib" ... Alt Shift Ctrl Win
另请注意,从WPF 4.5开始,您可以像这样编写Binding:
SelectedItem="{Binding Path=(properties:Settings.Default).KeyModifier, Mode=TwoWay}"
更改值后是否保存了设置? Settings.Default.Save()