为什么在 'Settings.Default' 上使用字符串索引器来更改 属性 值不是 saved/persisted?
Why using string indexer on 'Settings.Default' to change a property value is not saved/persisted?
我有一个 .NET Framework 应用程序,我需要保存和加载 bool 变量的状态。我尝试使用 MyApp.Properties 库来做到这一点。这是我的保存代码:
private static void ChangeBoolState()
{
warningMessageState = false;
Settings.Default["warningMessageState"] = warningMessageState;
Settings.Default.Save();
}
在这里加载:
warningMessageState = Convert.ToBoolean(Settings.Default["warningMessageState"]);
当我尝试使用此代码加载或保存此变量时,出现错误:
System.Configuration.SettingsPropertyNotFoundException: "Settings property 'warningMessageState' could not be found."
任何人都知道,我做错了什么?提前谢谢您!
- 在项目菜单上单击属性
- 在左侧点击设置
- 出现类似这样的内容(或者可能是“此项目不包含设置文件,请单击此处创建一个”- 单击此处):
- 确保网格包含一个名为 WarningMessageState 的 User Scoped bool(使用 pascal 大小写;它将以 class 属性)
- 然后您可以使用如下代码:
Properties.Settings.Default.WarningMessageState = true;
Properties.Settings.Default.Save();
if(Properties.Settings.Default.WarningMessageState)
MessageBox.Show("Warning!");
我有一个 .NET Framework 应用程序,我需要保存和加载 bool 变量的状态。我尝试使用 MyApp.Properties 库来做到这一点。这是我的保存代码:
private static void ChangeBoolState()
{
warningMessageState = false;
Settings.Default["warningMessageState"] = warningMessageState;
Settings.Default.Save();
}
在这里加载:
warningMessageState = Convert.ToBoolean(Settings.Default["warningMessageState"]);
当我尝试使用此代码加载或保存此变量时,出现错误:
System.Configuration.SettingsPropertyNotFoundException: "Settings property 'warningMessageState' could not be found."
任何人都知道,我做错了什么?提前谢谢您!
- 在项目菜单上单击属性
- 在左侧点击设置
- 出现类似这样的内容(或者可能是“此项目不包含设置文件,请单击此处创建一个”- 单击此处):
- 确保网格包含一个名为 WarningMessageState 的 User Scoped bool(使用 pascal 大小写;它将以 class 属性)
- 然后您可以使用如下代码:
Properties.Settings.Default.WarningMessageState = true;
Properties.Settings.Default.Save();
if(Properties.Settings.Default.WarningMessageState)
MessageBox.Show("Warning!");