2014-02-28 55 views
0

我試過這個,但它不起作用。即使我選擇了東西,它們仍然很灰。如何啓用一個按鈕,如果列表框中的項目被選中

btnVoirFiche.Enabled = false; 
btnEchangerJoueur.Enabled = false; 
if (lstJoueurs.SelectedIndex != -1) 
     { 
      btnVoirFiche.Enabled = true; 
      btnEchangerJoueur.Enabled = true; 
     } 
     else 
     { 
     } 
+0

這個代碼裏面有什麼事件?事件是否真的在開火? (在其中放置一個斷點並確保它正在執行。) –

+0

into this:private void frmPoolHockeyLNH_Load(object sender,EventArgs e) { – user2180198

+0

列表框的SelectedIndexChanged事件是否指向該方法? – bubbinator

回答

3

你要處理的ListBox.SelectedIndexChanged事件,您的處理程序中你要檢查的具體值是選定一個,然後相應地設置您按鈕的啓用屬性。

事情是這樣的:

private void listBox1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    if(listBox1.SelectedIndex != -1) 
    { 
     btnVoirFiche.Enabled = true; 
     btnEchangerJoueur.Enabled = true; 
    } 
    else 
    { 
     //whatever you need to test for 
    } 
} 

乾杯

編輯:我也不太清楚你的按鈕的enabled屬性的邏輯是什麼,所以我的答案是非常通用的。如果你向你添加細節的問題,我會適應。

+0

謝謝你是完美的,你是否也知道如何使一個隱藏的元素出現與另一個命令(選中時)?例如:如何讓btnVoirFiche.Hide出現。 – user2180198

+0

btnVoirFiche.Visible = true; –

1

掛接到SelectedIndexChanged事件,並把你的代碼,它

private void lstJoueurs_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    if (lstJoueurs.SelectedIndex != -1) 
    { 
     btnVoirFiche.Enabled = true; 
     btnEchangerJoueur.Enabled = true; 
    } 
} 
0

內作爲替代,並使用mrlucmorin的回答,您可以使用列表框的SelectedItem如果沒有被選中將返回null

相關問題