2012-08-07 64 views
14

我想知道如何編寫if語句以查看是否選中了一個或另一個複選框。如果語句爲複選框

我有兩個複選框。我希望它檢查複選框1是否被選中,複選框2是否爲空然後調用該函數,如果複選框2被選中並且複選框1爲空,則調用另一個函數。

非常糟糕的if語句和不知道如何將複選框轉換爲可讀值。

+0

你可以添加代碼嗎? – 2012-08-07 16:10:18

+1

你真的打算'空',還是你想'假'?一個複選框可以有3個狀態,其中一個可以是'null'。 – 2012-08-07 16:10:20

+0

我不確定。這三個州是什麼?我以爲只能有兩個。所以通過null我暗示沒有檢查。 – user1512593 2012-08-07 16:21:38

回答

23

我在做一個假設,你的意思是不檢查。我沒有一個C#編譯器方便,但:

if (checkbox1.Checked && !checkbox2.Checked) 
{ 

} 
else if (!checkbox1.Checked && checkbox2.Checked) 
{ 

} 
+0

謝謝!完美工作 – user1512593 2012-08-07 16:35:20

3

你要使用checkbox1.checked財產在你的if語句,返回true或false取決於天氣,檢查與否。

1

在VB.Net

If Check1.checked and Not (Check2.checked) Then 

ElseIf Check2.Checked and not Check1.Checked then 

End If 
2

我簡化了科幻的答案,我認爲是使用異或功能,所以你可以有:

if(checkbox1.checked^checkbox2.checked) 
{ 
//do stuff 
} 

這是假設你想要做的兩種情況都是一樣的。

1
private void checkBox1_CheckedChanged(object sender, EventArgs e) 
{ 
    if (checkBoxImage.Checked) 
    { 
     groupBoxImage.Show(); 
    } 
    else if (!checkBoxImage.Checked) 
    { 
     groupBoxImage.Hide(); 
    } 
}