在应用程序中使用用户可更改设置的正确方法是什么

时间:2017-12-03 22:51:00

标签: c# uwp windows-runtime uwp-xaml

假设有一个ThumbnailWidth变量,用户可以更改,并且应该可以通过XAML中的绑定访问,也可以从提取缩略图的类中访问。

我们可以添加一个静态类,但用户将无法更改那里定义的值。在WPF中,我们可以简单地使用“设置”中定义的properties.settings.default.ThumbnailWidth,但我不确定它是否是使用它的正确方法。

您在项目中使用的方式是什么?

1 个答案:

答案 0 :(得分:1)

这就是我正常处理我的应用程序设置的方法。首先,在窗口声明中我添加以下内容(它是定义设置位置的自定义XML命名空间声明):

xmlns:p="clr-namespace:MyNamespace.Properties"

然后,我将设置绑定到需要的地方......例如:

<TextBlock Width="{Binding Source={x:Static p:Settings.Default}, Path=Width, Mode=TwoWay}"/>

<CheckBox IsChecked="{Binding Source={x:Static p:Settings.Default}, Path=MySetting, Mode=TwoWay}"/>

etc...

最后,我在应用程序关闭时保存修改后的设置:

protected override void OnClosing(CancelEventArgs e)
{
    Properties.Settings.Default.Save();
    base.OnClosing(e); 
}