如果选中列表框中的项目,如何启用按钮

时间:2014-02-28 02:20:49

标签: c# listbox

我尝试了这个,但它不起作用。即使我选择东西,它们仍然是灰色的。

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

3 个答案:

答案 0 :(得分: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
    }
}

干杯

编辑:我不太清楚按钮启用属性的逻辑是什么,所以我的答案非常通用。如果您向问题添加详细信息,我会相应调整。

答案 1 :(得分:1)

挂钩到SelectedIndexChanged事件并将你的代码放在其中

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

答案 2 :(得分:0)

作为替代方案,并使用mrlucmorin的答案,您可以使用列表框的SelectedItem,如果未选择任何内容,则会返回null