我可以缩短这个吗?

时间:2017-06-25 17:40:45

标签: c#

你好我需要帮助缩短这一点,所有的答案都值得赞赏! 我有想法找到一些方法,但没有成功,我有点自然,所以简单的事情可能,但不是简单

        if (comboBox11.Text == "")
        {
            comboBox1.Enabled = true;
            comboBox2.Enabled = true;
            comboBox3.Enabled = true;
            comboBox4.Enabled = true;
            comboBox5.Enabled = true;
            comboBox6.Enabled = true;
            comboBox7.Enabled = true;
            comboBox8.Enabled = true;
            comboBox9.Enabled = true;
            comboBox10.Enabled = true;
            comboBox11.Enabled = true;
            comboBox12.Enabled = true;
        }
        else
        {
            comboBox1.Enabled = false;
            comboBox2.Enabled = false;
            comboBox3.Enabled = true;
            comboBox4.Enabled = false;
            comboBox5.Enabled = false;
            comboBox6.Enabled = false;
            comboBox7.Enabled = false;
            comboBox8.Enabled = false;
            comboBox9.Enabled = false;
            comboBox10.Enabled = false;
            comboBox11.Enabled = true;
            comboBox12.Enabled = false;
        }

1 个答案:

答案 0 :(得分:3)

在Winforms应用程序中,这些控件都托管在控件容器中。通常这是表单本身,您可以循环遍历此控件容器以此方式获取每个组合

bool enable = (comboBox11.Text == "");
foreach(ComboBox cb in this.Controls.OfType(ComboBox)())
    cb.Enabled = enable;
// These are always enabled.
comboBox11.Enabled = true;
comboBox3.Enabled = true;