如果两个Checkboxes标志为false吗?

时间:2012-04-03 20:09:06

标签: c# visual-studio-2008 checkbox messagebox

我对代码中的Google查询感到沮丧,所以我只问你所有的专家。

我有一个< 500行程序,它列出了树中clearcase的文件,现在我想点击它们并检查它们是否存在。结帐部分我可以通过命令行或插件完成(:: whew :: clearcase不容易编程)无论如何我必须复选一个签入一个结帐,如果两个都没有被选中(都是假的)我希望它通知用户。我有以下代码,它的工作原理...除了它始终显示“未选中”消息,因为一个标志始终为false。

if (checkBox1.checked == true
{
   MessageBox.Show("this")
}
if (checkBox2.checked == true 
{
   MessageBox.Show("THAT")
}
if (checkbox1.checked == false | checkbox2.checked == false)
{
   MessageBox.show("You didn't select this or THAT")
}

在第一个选择之后它总是说“那个”或“这个”然后“你没有选择这个或那个”

此外,我还设置了复选框,以便在您选中其中一个时取消选中另一个,但两者都可能为假。

5 个答案:

答案 0 :(得分:6)

您想检查它们是否都是假的,并且使用逻辑AND完成。垂直条表示OR条件。

if (checkbox1.checked == false && checkbox2.checked == false)
{
    MessageBox.show("You didn't select this or THAT")
}

那应该做你想要的。

答案 1 :(得分:1)

尝试

if (checkBox1.checked == true)
{ 
    MessageBox.Show("this") 
} 
else if (checkBox2.checked == true)
{ 
    MessageBox.Show("THAT") 
} 
else 
{ 
    MessageBox.show("You didn't select this or THAT") 
} 

或更好:

if (checkBox1.checked)
{ 
    MessageBox.Show("this") 
} 
else if (checkBox2.checked)
{ 
    MessageBox.Show("THAT") 
} 
else 
{ 
    MessageBox.show("You didn't select this or THAT") 
} 

答案 2 :(得分:1)

使用if-else语句而不仅仅是if语句。这样它将在执行第一个语句后停止。

答案 3 :(得分:1)

if (checkBox1.checked)
{
   MessageBox.Show("this")
}
else if (checkBox2.checked)
{
   MessageBox.Show("THAT")
}
else
{
   MessageBox.show("You didn't select this or THAT")
}

答案 4 :(得分:1)

怎么样?
(checkbox1.checked == false & checkbox2.checked == false)

垂直线是OR,而&符是AND