将c#WPF复选框绑定到应用程序设置和更新设置

时间:2014-02-06 22:59:20

标签: c# wpf checkbox

在使用C#的WPF应用程序中,我想将CheckBox的默认值绑定到应用程序设置(Properties.Settings.Default.OpenAutomatically类型的bool)的值,这样当表单加载,CheckBox自动设置为从绑定的应用程序设置读取的值。

其次,当CheckBox的值发生变化时(通过用户点击它),bool应用程序设置应保持同步(如果选中则为true,如果未选中则为false)。

这似乎是.NET应该为您提供开箱即用的功能,而无需编写代码以在用户操作UI时保持设置同步。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您可以在XAML中引用命名空间(YourNamespace.Properties.Settings)并绑定到Settings成员,但不会有任何更改通知(因为设置没有实现任何类型的更改通知)所以如果直接绑定到它您将获得存储在设置中的值,但您无法通过选中或取消选中复选框来更新设置...尽管我并非100%确定无法实现更新使用触发器和交互/交互来调用Settings.Default.Save()方法...

我认为你必须使用ViewModel,将CheckBox绑定到该ViewModel中的属性,当属性发生更改时(或单击“保存”按钮),调用{{1你的ViewModel设置的方法...我是怎么做的,但是我再也没有尝试过使用视图中的触发器来调用Settings.Default.Save()方法,因为我通常有很多设置,即使这是可能的,我也不想在我的XAML中进行所有那些触发和方法调用...