C# - 启用按钮根据列表框禁用

问题描述 投票:0回答:2

像这样的场景;首先我的按钮被禁用。只要表中选定的索引等于-1并且表中的元素数为0,该按钮将被禁用。我这样编码但它不起作用;

    private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        button1.Enabled = false;
        if (listBox1.SelectedIndex != -1 && listBox1.Items.Count > 0)
        {
            button1.Enabled = true;
        }
        else
        {
            button1.Enabled = false;
        }
    }

注意:代码不会失败但不起作用。

谢谢。

c# button listbox selectedindexchanged
2个回答
1
投票

我将button1.Enabled = false的位置更改为Form3,并删除了listbox.Items.Count条件。 listbox.selectedindex != -1足以完成这项工作,因为我们正在填写'selectedindex'函数,它不接受listbox.items,它适用于选定的索引。

 public Form3()
 {
     InitializeComponent();
     button1.Enabled = false;
 }

 private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (listBox1.SelectedIndex != -1)
     {
         button1.Enabled = true;
     }
 }

0
投票
private void Form2_Load(object sender, EventArgs e)
    {
        button1.Hide();
    }

    private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (listBox1.SelectedIndex!=-1&&listBox1.SelectedIndex>0)
        {
            button1.Show();
        }
        else
        {
            button1.Hide();
        }
    }

试试这个

© www.soinside.com 2019 - 2024. All rights reserved.