2009-02-04 66 views
1

如果您還沒有閱讀first問題,請確定要趕上速度。那麼,我該如何去清除這些複選框?我試着使用@colithium告訴我用於檢查所有複選框狀態的相同方法,但是當我運行程序並單擊清除時,出現以下運行時錯誤:編程技能測試儀(問題)v2.0

無法將類型爲' System.Windows.Forms.Button'鍵入'System.Windows.Forms.CheckBox'。

回答

1

我假設你的方法看起來是這樣的:

private void clearButton_Click(object sender, EventArgs e) 
{ 
    CheckBox cb = (CheckBox)sender; 
    cb.Checked = false; 
} 

在這種情況下,「發件人」是清除按鈕,而不是一個複選框。 從Stormenet的回答借鑑:

private void clearButton_click(object sender, EventArgs e) 
{  
    foreach (Control c in this.Controls) 
    { 
     CheckBox cb = c as CheckBox; 
     if (cb != null) 
     { 
      cb.Checked = false; 
     } 
    } 
} 

1

CheckBox.Checked設置爲false。如果這不是你所需要的,請提供更多的信息。

6

我猜你正在運行一個關於你的所有控件的foreach,並忘記看看控件是否實際上是一個複選框。

foreach (Control c in this.Controls) { 
    CheckBox cb = c as CheckBox; 
    if (cb!=null) { 
     //do your logic 
    } 
}