【问题标题】:How can I change the properties.settings c#如何更改 properties.settings c#
【发布时间】:2016-03-20 09:48:18
【问题描述】:

我有一个表单 (winforms),在那个表单中我有一个侧边栏。 在侧边栏的属性窗口中,我单击了ApplicationSettings,然后单击了PropertyBindigs,在出现的对话框中,我看到了侧边栏的所有属性。在visible 右侧的文本框中,我给它起了一个名字“SelectedVisible”。

在我的项目名称的Solution explorer 中,我右键单击并选择properties 现在我看到了设置,实际上我看到我创建的设置(SelectedVisible)是bool,其值为@987654327 @。

在我有一个combobox 的表单中,带有“True”和“False”项,其想法是如果我选择“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 时,侧边栏仍然存在。

明白我的困惑吗?

谢谢

【问题讨论】:

    标签: c# winforms


    【解决方案1】:

    尝试将您的条件更改为:

    if (comboBox1.SelectedItem.ToString().Equals("True")) {}
    

    【讨论】:

      【解决方案2】:

      我试过了,对我来说效果很好。

      问题是条件,试试这个:

      Properties.Settings.Default.SelectedVisible = bool.Parse(comboBox1.Text);
      

      为了安全起见,您可以使用 TryParse:

      bool value;
      if(bool.TryParse(comboBox1.Text, out value))
      {
          Properties.Settings.Default.SelectedVisible = value;
      }
      

      【讨论】:

      • 谢谢,它有效。犯的错误是将其写在错误的部分。
      猜你喜欢
      • 2010-09-17
      • 2016-07-07
      • 1970-01-01
      • 2012-08-09
      • 1970-01-01
      • 1970-01-01
      • 2017-08-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多