我目前正在開發一個窗口應用程序,該程序的某些方面使用CheckedListBoxes。我遇到的一個問題是,我一直在試圖找出當一個項目被選中時觸發哪個事件,以便在任何列表項被選中時啓用一個表單按鈕。Windows C#CheckedListBox檢查項目事件處理
問題是我嘗試使用以下;
private void clbAvailMods_ItemCheck(object sender, ItemCheckEventArgs e)
{
if(e.NewValue == CheckState.Checked)
{
btnInstall.Enabled = true;
}
}
但是,當我在if語句上設置斷點時,它從不觸發檢查列表框中的項目。
我在這裏做錯了什麼?
看來表單設計器在那裏有一個註冊不好的事件。這確定了核心問題,但現在出現了一個新的問題,看起來更模糊。 顯然檢查項目的狀態不會更新,直到ItemCheck完成後纔會更新。這是不好的,因爲我需要檢查第一個項目來觸發體現的代碼。由於狀態直到事後才更新,所以我忽略了項目檢查事件觸發的即時註冊。 – 2010-07-05 20:41:35