检查是否选择了ComboBox值

Ida*_*nis 5 c# forms combobox winforms

我正在写一个包含一些按钮和一个组合框的表单.默认情况下禁用"确定"按钮,我希望仅在选择实际值(不是组合框的名称)后启用它.

我知道如何访问所选值,以及如何检查是否已选择值 - 但这两个只能在表单关闭后使用(使用"x"或使用"ok"按钮 - 已禁用) .

有任何想法吗?

谢谢.

Mit*_*tch 8

也许是这样的:

    private void comboBox_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (comboBox.SelectedIndex > -1)
        {
            buttonOK.Enabled = true;
        }
    }
Run Code Online (Sandbox Code Playgroud)

默认情况下,组合框的选定索引为-1(组合框的名称,在选择另一个索引后无法重新选择),因此如果检查它不是-1,那么您就知道已经选择了一个值.

然而另一种选择,我使用的是,如果我总是想要选择一个值是使用DropDownStyle属性并将其设置为DropDownList.这样,默认情况下会选择索引0,用户只能从列表中选择项目,而不能选择任何其他内容.