根据另一个 ComboBox C# 中的更改 ComboBox 启用状态
Change ComboBox Enabled State based on the in another ComboBox C#
我有两个组合框,第一个是 CmdGuarantor
,第二个是 CmdGuarantorClass
。
CmdGuarantor
有 7 个项目的列表:
NSSF Private MOH Army IS GS UNHCR
而 CmdGuranatorClass
的项目列表中有 1st Class 2nd Class 3rd Class
。
我想在 CmdGuarator.SelectedItem.ToString() == "Private" || CmdGuarator.SelectedItem.ToString() == "UNCHR"
时禁用 CmdGuarantorClass
我怎样才能做到这一点?
P.S.: 我尝试使用此方法
在 CmdGuarantorClass
ComboBox 上使用 EnableChanged 事件
private void ComboBox2_EnabledChanged(object sender, EventArgs e)
{
if (CmdGuarantor.SelectedItem.ToString() == "Private" || CmdGuarantor.SelectedItem.ToString() == "UNCHR")
{
CmdGuarantorClass.Enabled = false;
}
else CmdGuarantorClass.Enabled = true;
}
但运气不好。
提前谢谢你。
您应该监听 SelectedIndexChanged 事件,而不是 EnabledChanged 事件。仅当 Enabled
属性 更改时才会引发 EnabledChanged。
假设 datagridview
标签是错误的,并且您正在谈论两个不同的 winform
ComboBoxes
...那么...我建议您连接第一个组合框 SelectedIndexChanged
事件。
当用户更改组合框中的选择时将触发此事件。在那种情况下,您可以检查组合框值,然后根据需要设置其他组合框 Enabled
属性。像……
private void comboGuarantor_SelectedIndexChanged(object sender, EventArgs e) {
if (comboGuarantor.SelectedItem.ToString() == "Private" ||
comboGuarantor.SelectedItem.ToString() == "UNCHR") {
comboGuarantorClass.SelectedIndex = -1;
comboGuarantorClass.Enabled = false;
}
else {
comboGuarantorClass.Enabled = true;
}
}
我有两个组合框,第一个是 CmdGuarantor
,第二个是 CmdGuarantorClass
。
CmdGuarantor
有 7 个项目的列表:
NSSF Private MOH Army IS GS UNHCR
而 CmdGuranatorClass
的项目列表中有 1st Class 2nd Class 3rd Class
。
我想在 CmdGuarator.SelectedItem.ToString() == "Private" || CmdGuarator.SelectedItem.ToString() == "UNCHR"
CmdGuarantorClass
我怎样才能做到这一点?
P.S.: 我尝试使用此方法
在CmdGuarantorClass
ComboBox 上使用 EnableChanged 事件
private void ComboBox2_EnabledChanged(object sender, EventArgs e) { if (CmdGuarantor.SelectedItem.ToString() == "Private" || CmdGuarantor.SelectedItem.ToString() == "UNCHR") { CmdGuarantorClass.Enabled = false; } else CmdGuarantorClass.Enabled = true; }
但运气不好。
提前谢谢你。
您应该监听 SelectedIndexChanged 事件,而不是 EnabledChanged 事件。仅当 Enabled
属性 更改时才会引发 EnabledChanged。
假设 datagridview
标签是错误的,并且您正在谈论两个不同的 winform
ComboBoxes
...那么...我建议您连接第一个组合框 SelectedIndexChanged
事件。
当用户更改组合框中的选择时将触发此事件。在那种情况下,您可以检查组合框值,然后根据需要设置其他组合框 Enabled
属性。像……
private void comboGuarantor_SelectedIndexChanged(object sender, EventArgs e) {
if (comboGuarantor.SelectedItem.ToString() == "Private" ||
comboGuarantor.SelectedItem.ToString() == "UNCHR") {
comboGuarantorClass.SelectedIndex = -1;
comboGuarantorClass.Enabled = false;
}
else {
comboGuarantorClass.Enabled = true;
}
}