C# 每次单击按钮时更改布尔值
我有一个布尔值,在应用程序开始时设置为false。但是,当有人单击按钮时,布尔值设置为true,并开始执行我编写的代码。如果用户重新单击按钮,布尔值是否可能再次变为false,从而代码停止运行?现在,如果我重新单击按钮,它只执行我编写的代码,这似乎是合乎逻辑的,但如果我重新单击它,我希望它将其变为false,如果我重新单击它,它将再次变为true,等等。使用!用于切换布尔值的一元运算符:C# 每次单击按钮时更改布尔值,c#,forms,C#,Forms,我有一个布尔值,在应用程序开始时设置为false。但是,当有人单击按钮时,布尔值设置为true,并开始执行我编写的代码。如果用户重新单击按钮,布尔值是否可能再次变为false,从而代码停止运行?现在,如果我重新单击按钮,它只执行我编写的代码,这似乎是合乎逻辑的,但如果我重新单击它,我希望它将其变为false,如果我重新单击它,它将再次变为true,等等。使用!用于切换布尔值的一元运算符: _someBoolean = !_someBoolean; 在c中有一个否定运算符 所以你可以这样做: p
_someBoolean = !_someBoolean;
在c中有一个否定运算符 所以你可以这样做:
private bool myBool;
public void OnButtonClick()
{
myBool = !myBool;
}
这将导致每次按下按钮时它都会更改尽管其他答案正确地解释了如何切换表单的布尔字段,但您可以使用以下内容: 不需要额外的字段。 为用户提供关于是否启用某些功能的良好提示。 可以使用“外观”属性设置为“按钮”的复选框控件。这将使复选框看起来完全像序号按钮,用户单击它后可以保持按下状态。您可以订阅此复选框的CheckedChanged事件,订阅方式与订阅按钮的单击事件相同:
private void FooCheckBox_CheckedChanged(object sender, EventArgs e)
{
if (fooCheckBox.Checked)
// ...
}
如果你点击这个按钮,你会建议代码停止执行吗?考虑使用复选框来打开和关闭某物。