C# C-根据列表框启用或禁用按钮
这样的情景,;首先,我的按钮被禁用。只要表中选定的索引等于-1且表中的元素数为0,则该按钮将被禁用。我这样编码,但它不工作C# C-根据列表框启用或禁用按钮,c#,button,listbox,selectedindexchanged,C#,Button,Listbox,Selectedindexchanged,这样的情景,;首先,我的按钮被禁用。只要表中选定的索引等于-1且表中的元素数为0,则该按钮将被禁用。我这样编码,但它不工作 private void listBox1_SelectedIndexChanged(object sender, EventArgs e) { button1.Enabled = false; if (listBox1.SelectedIndex != -1 && listBox1.Items.Count &
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;
}
}
注意:代码没有失败,但不起作用
多谢各位
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();
}
}
试试这个
我将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;
}
}
尝试更改您的if like=>if listBox1.SelectedIndex!=-1&&listBox1.Items.Count==0您认为我需要其他函数还是其他什么@如果条件变为上述情况,会发生什么?请描述不起作用。“你到底在期待什么事情没有发生?”SirRufo我编辑了我的答案,祝你愉快。我用另一种解决方案做到了。我将button1.Enabled=false的位置更改为Form1中的,并删除了listbox.Items.Count条件。listbox.selectedindex!=-1对于此作业已足够,因为我们正在填写“selectedindex”函数,它不接受listbox.items,它适用于selectedindex。无论如何,谢谢你。