如何加载用户设置和值

时间:2014-02-07 19:25:52

标签: c# .net settings

一次加载多个用户设置的最佳方法是什么。例如,我的应用程序有许多用户设置,如:

settingCapitalizeStrings bool user true

然后在我的FormOptions_Load我需要遍历所有设置和值,如:

private void FormOptions_Load(object sender, EventArgs e)
{
    if(s.settingCapitalizeStrings == true)
    {
       capitalizeStringsCheckBox.Checked = true;
    }
    // and many many more
}

然后处理每个CheckBox_CheckedChanged

有更好的解决方案吗?我可以绑定用户设置或类似的内容吗?

2 个答案:

答案 0 :(得分:3)

我建议使用Application Settings

  1. 选择设计器中的复选框
  2. 转到媒体资源并选择(ApplicationSettins)
  3. 转到已选中,点击其值并选择 new
  4. 添加作用域
  5. 的新应用程序设置

    enter image description here

    这将生成从文件加载设置的代码,并添加对Checked复选框属性的绑定(在表单创建期间将从设置文件加载属性值,并在复选框Checked属性值时更新设置文件将被更改):

    this.capitalizeStringsCheckBox.Checked = global::WindowsFormsApplication.Properties.Settings.Default.CapitalizeStrings;
    this.capitalizeStringsCheckBox.DataBindings.Add(new System.Windows.Forms.Binding("Checked", global::WindowsFormsApplication.Properties.Settings.Default, "CapitalizeStrings", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
    

答案 1 :(得分:1)

尝试查看配置,并将所有内容放在app.config中: http://msdn.microsoft.com/en-us/library/system.configuration.configuration(v=vs.110).aspx

另外,

private void FormOptions_Load(object sender, EventArgs e)
{
    capitalizeStringsCheckBox.Checked = s.settingCapitalizeStrings;
}

更优雅。