启用/禁用comboBox值的控件

时间:2013-09-02 09:36:53

标签: c# winforms combobox

我有一行组合框,其值应在操作员选择框中选择某个选项时启用/禁用。问题是代码禁用了面板中的所有控件,并且必须将表单重新加载到响应所述控件。当选择组合框选择“无”时,我希望它禁用所有控件但是我的第二个组合框和一个复选框。 任何有关代码的帮助都非常感谢。

private void OperatorSelect_SelectedIndexChanged(object sender, EventArgs e)
    {
        bool isEnabled = 
            (OperatorSelect.SelectedItem.ToString() != "(None)");
        foreach (Control cb in this.Controls)
        {
            cb.Enabled = !isEnabled;

        }
        this.comboBoxToStillShow = !isEnabled;
        this.CheckboxToStillShow = !isEnabled;

    }     

目前所有控件都已禁用,我需要帮助才能启用其他两个控件,其余所有控件都将被禁用。谢谢

1 个答案:

答案 0 :(得分:0)

您的comboBoxToStillShowCheckboxToStillShow似乎应该一直处于启用状态,所以只需在循环中跳过它们:

private void OperatorSelect_SelectedIndexChanged(object sender, EventArgs e)
{
    bool isEnabled = 
        (OperatorSelect.SelectedItem.ToString() != "(None)");
    foreach (Control cb in this.Controls)
    { 
        if(cb == comboBoxToStillShow || cb == CheckboxToStillShow) continue;
        cb.Enabled = !isEnabled;
    }        
}