在列表框中选择一个项目之前,启用/禁用按钮?

4

如何在列表框中选择项目之前禁用按钮?


你使用哪个GUI框架?Win32?GTK?Qt? - casablanca
你使用什么样的演示技术,ASP.NET、WinForm、WPF? - Hunter
抱歉,但我正在使用Win32(Visual C#)。 - klopske
2个回答

4

首先,您需要禁用按钮:

button1.Enabled = false;

然后您订阅列表框的SelectedIndexChanged事件。下面是处理程序:

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

您可以通过 Visual Studio IDE 或编程方式订阅事件,例如:
listBox1.SelectedIndexChanged+=new EventHandler(listBox1_SelectedIndexChanged);

0

既然你提到了winforms,一种方法是在属性资源管理器中将按钮的属性IsEnabled=false设置为false。然后为listbox添加一个OnSelectionChanged事件。VS会自动为您插入代码,然后您可以将其放在事件处理程序中:

 button1.IsEnabled = listbox1.SelectedIndex > 0;

如果您正在使用WPF,可以以相同的方式完成,但最好使用数据绑定。


抱歉,我对C#的知识不足以理解您的意思。您能否为我写下所需的所有代码吗?(IsEnabled无效) - klopske
1
按钮类上没有 IsEnabled 属性,只有 'Enabled'。 - Liviu Mandras

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接