Settings.settings 文件中有一些默认列出的数据类型,然后您可以在选择“浏览”时从树中添加更多数据类型。
我实际上需要int[]
在我的设置文件中存储一个,并这样做:
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public int[] SPLTimings
{
get
{
return ((int[])(this["SPLTimings"]));
}
set
{
this["SPLTimings"] = value;
}
}
并在程序第一次运行时:
int[] timings = Settings.SPLTimings ?? new int[] { 25, 100, 80, 50, 125, 50 };
后来被保存到磁盘。和Settings.Save()
这工作得很好,但有一个小问题。如果我想使用设置 GUI 界面添加一个简单的数据类型,那么我的自定义添加将被删除,我必须再次添加它们。我目前只有这种特殊情况,所以如果它被删除,添加它并不是什么大问题。另一方面,我可以像添加int[]
: 直接将其编码到 Settings.Designer 文件中一样添加后续基本设置,如字符串/整数/等。
必须有更好的方法来做到这一点?
由于Settings
该类已经是部分的,因此创建一个新文件(例如 CustomSettings)是否是一个更好的解决方案,该文件将继续类定义并包含这些晦涩的类型?