【问题标题】:Creating a universal boolean in C#在 C# 中创建通用布尔值
【发布时间】:2014-02-20 13:31:48
【问题描述】:

我写:

bool example = true 在代码下表示一个按钮事件:private void button1_Click(object sender, EventArgs e)

我试图在用户按下按钮时更改此布尔值。

问题是,我的 bool 只在这种情况下被识别。当我尝试在private void checkBox1_CheckedChanged(object sender, EventArgs e) 下使用它时,Visual Studio 会通知我一个错误,提示该名称在上下文中不存在。

我应该把 bool 的代码放在哪里?

谢谢。

【问题讨论】:

  • 您绝对应该了解更多有关编程和语言的基础知识,因为变量范围确实是一项基础知识,您不应该在没有任何 UI 的情况下编写...
  • 绝对!实际上,我正在观看 The New Boston 的一系列关于 if 语句的节目。我只是有点走神,并认为这样做会很有趣。

标签: c# if-statement boolean


【解决方案1】:

将其移至类级别:即Form 类的成员:

public class YourForm : Form {
    private bool _example = true;

    // ... your event handlers here

    private void checkBox1_CheckedChanged(object sender, EventArgs e) {
        _example = false; // etc
    }
}

【讨论】:

  • 非常感谢!
  • 没问题。很高兴我能帮上忙。
【解决方案2】:

我应该把 bool 的代码放在哪里?

在您的方法之外,在class level

public class MyForm : Form
{
   // here is class level

   public void SomeMethod()
   {
      // here is method level
   }
}

【讨论】:

    【解决方案3】:

    作为班级的一员;

    public class MyClass
    {
        private bool example = false;
        private void button1_Click(object sender, EventArgs e)
        {
            example = true;
        }
    
        private void checkBox1_CheckedChanged(object sender, EventArgs e)
        {
            //example available
        }
    }
    

    【讨论】:

      【解决方案4】:

      使用静态变量或类级别。

      【讨论】:

      • 如果您可以添加代码示例或更多详细信息,那就太好了!
      猜你喜欢
      • 2014-05-08
      • 2010-09-25
      • 1970-01-01
      • 2010-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-02
      相关资源
      最近更新 更多