我有一个表单(winforms),在那个表单中我有一个侧边栏。在侧边栏的属性窗口中,我单击了ApplicationSettings,然后单击了PropertyBindigs,在出现的对话框中,我看到了侧边栏的所有属性。在visible右侧的文本框中,我给它起了一个名字'SelectedVisible‘。
在我的项目名称的Solution explorer中,我右键单击并选择properties,现在我看到了设置,实际上我看到的是我创建的(SelectedVisible),它是一个值为True的bool。
在表单中,我有一个带有'True‘和'false’项的combobox,其思想是如果我选择'False',侧边栏在运行时消失,如果我选择'true‘,侧边栏就会出现。为此,我编写了以下代码
if(comboBox1.Text=="False")
{
Properties.Settings.Default.SelectedVisible = False;
}
else if(comboBox1.Text=="True")
{
Properties.Settings.Default.SelectedVisible = True;
}Settings.Default.Save();处于按钮的单击事件中
现在的问题是:现在我做什么设置仍然是' True ',我试图将代码从True改为"True“,并将False改为"False”,但每次我检查应用程序的属性时,我发现什么都没有改变。
第二个问题:如果我手动更改“SelectedVisible”的值,然后运行我的应用程序,即使在侧边栏的属性中该值为false,侧边栏仍然存在。
明白我的困惑了吗?
谢谢
发布于 2016-03-20 17:57:19
尝试将您的条件更改为:
if (comboBox1.SelectedItem.ToString().Equals("True")) {}发布于 2016-03-20 18:03:25
我试过了,对我来说它工作得很好。
问题出在条件上,试试这个:
Properties.Settings.Default.SelectedVisible = bool.Parse(comboBox1.Text);为了安全起见,您可以使用TryParse:
bool value;
if(bool.TryParse(comboBox1.Text, out value))
{
Properties.Settings.Default.SelectedVisible = value;
}https://stackoverflow.com/questions/36112262
复制相似问题