2013-12-14 76 views
0

我有一個列表框,我有一個按鈕。當列表框爲空時,我想讓我的按鈕被禁用。當我的列表框不是空的,我想讓我的按鈕被啓用,所以我可以點擊它,它會運行它的代碼。列表框爲空時禁用按鈕

到目前爲止,我已經做了這樣的事情:

 if(lbCalls.Items.Count > 0) 
     { 
      btnNextCall.Enabled = true; 
     } 
     else 
     { 
      btnNextCall.Enabled = false; 
     } 

不過,我仍然可以在我的按鈕點擊,即使列表框仍然是空的,然後給了我一個錯誤,我無法繼續。

我該如何解決這個問題?

+0

'WPF'或'Winforms'? –

+0

@RohitVats Winforms – Rnft

+0

@Rnft:你在哪兒寫了上面的代碼?在哪個事件? –

回答

0

您必須調用它一定的EventArgs,例如,的OnLoad調用它,ListBox.SelectedChanged,所以嘗試做一些測試。

0

解決方案:您需要在ItemDelete函數中運行上述代碼。

步驟1:創建function改變ButtonStatus
第2步:立即從ListBox中刪除item後立即致電function

試試這個:

private void btnRemove_Click(object sender, EventArgs e) 
    { 
     if (lbCalls.Items.Count > 0) 
      lbCalls.Items.RemoveAt(lbCalls.SelectedIndex); 

     ChangeButtonStatus(); 
    } 
    void ChangeButtonStatus() 
    { 
     if (lbCalls.Items.Count > 0) 
      btnNextCall.Enabled = true; 
     else 
      btnNextCall.Enabled = false; 
    } 
+0

我得到它爲我的列表框工作,但現在我需要的方法來對這種類型的情況下工作:除非我還沒有從兩個不同的列表框選擇了一個項目,我必須禁用我的調度按鈕。因此,必須選擇兩個不同列表框中的兩個項目才能啓用按鈕。我該怎麼做呢? – Rnft