在我的 Settings.settings 文件中,我有 10 个布尔项,我试图将它们全部保存到列表中,然后遍历它们,更改它们的值,然后将其保存回设置文件,但它不起作用。
这是一个简短的例子:
public List<bool> list = new List<bool>();
list.Add(Properties.Settings.Default.Item0);
list.Add(Properties.Settings.Default.Item1);
list.Add(Properties.Settings.Default.Item2);
list.Add(Properties.Settings.Default.Item3);
list.Add(Properties.Settings.Default.Item4);
// ... up to 10
然后我试图遍历它们:
for (int i = 0; i < list.Count; i++)
{
if (listBox1.GetSelected(i))
{
list[i] = true;
}
else
{
list[i] = false;
}
}
Properties.Settings.Default.Save(); // it sets list items properly but it doesn't actually save it to the user settings file
所以如果我会做这样的事情:
if (listBox1.GetSelected(0))
{
Properties.Settings.Default.Item0 = true;
}
else
{
Properties.Settings.Default.Item0 = false;
}
Properties.Settings.Default.Save();
它将保存它,下次我打开我的应用程序时,我会得到正确的保存值,但我不希望每个项目的 10 个 if 语句效率低下