2012-06-14 78 views
3

基本上,我有一個交付複選框的一個交付到這個地址和另一個交付到一個單獨的地址,我基本上想這樣做一旦一個已經檢查另一個可以不被檢出(可能通過灰色或其他方式)灰色複選框時,檢查另一個

請注意,兩個盒子都使用相同的控件。

+9

您應該使用單選按鈕進行互斥選項。 –

+0

你使用贏獎表格或WPF或...? –

回答

5

聽的第一個複選框的事件的CheckedChanged用這樣一個方法:

private void checkBox1_checkedChanged(object sender, EventArgs e) 
{ 
    this.checkBox2.Enabled = !this.checkBox1.Checked; 

    // If you want it to be unchecked as well as grayed out, 
    // then have this code as well: 
    if (!this.checkBox2.Enabled) 
    { 
     this.checkBox2.Checked = false; 
    } 
} 

但是,你應該考慮使用替代的CheckBox單選按鈕,如果它在邏輯上符合您的需求。

+0

這不起作用。它必須是'checkBox2.IsEnabled'和'checkBox2.IsChecked',而不是'.Enabled'或'.Checked' ... –

0

使用下面的代碼,

checkboxToBeGreyed.Enabled = false; 

你必須寫在其他複選框的選中事件的代碼。希望這可以幫助。

相關問題