将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()