使用Properties.Settings进行应用程序设置

时间:2011-12-23 09:37:33

标签: c# visual-studio-2010 settings

我使用Visual Studio提供的内置设置来存储简单的应用程序设置。到目前为止,我已经使用约定在我的应用程序中访问了它:

Properties.Settings.Default.MySetting

然后使用:

调用Save之类的方法
Properties.Settings.Default.Save()

然而,有人最近告诉我,通过创建这样的成员变量来访问属性更为正确:

private Properties.Settings settings = new Properties.Settings()

然后使用成员settings访问属性和方法,如:

settings.MySetting
settings.Save()

我模糊地回忆起他们通过描述设置存储在用户区域的方式的不同来证明这一点。

任何人都可以确认或提供有关差异的进一步细节吗?非常感谢。

2 个答案:

答案 0 :(得分:10)

Settings.Default初始化如下:

private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));

所以它与手动创建Settings的实例几乎相同,只是Settings.Default提供的实例是同步实例。我看不出任何有理由手动创建Settings的实例......

答案 1 :(得分:5)

这浪费了我很多时间。

[MyAppNameSpace].Properties.Settings.Default.Save();

不确定何时可以删除上面的命名空间,但是在app.xaml.cs代码中的wpf中我需要指定命名空间以使其编译。