我有一行组合框,其值应在操作员选择框中选择某个选项时启用/禁用。问题是代码禁用了面板中的所有控件,并且必须将表单重新加载到响应所述控件。当选择组合框选择“无”时,我希望它禁用所有控件但是我的第二个组合框和一个复选框。 任何有关代码的帮助都非常感谢。
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;
}
目前所有控件都已禁用,我需要帮助才能启用其他两个控件,其余所有控件都将被禁用。谢谢
答案 0 :(得分:0)
您的comboBoxToStillShow
和CheckboxToStillShow
似乎应该一直处于启用状态,所以只需在循环中跳过它们:
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;
}
}