在winforms应用程序中,我有一种情况。 当某个复选框被选中时,应该禁用该复选框。 我知道这不是一个理想的设计,但目前相当多的依赖于此,所以我不知道如何使代码在下面的工作,因为它将是大代码基地的最小的变化。通过事件中的另一个复选框更改复选框
private void cbCalibrate_CheckedChanged(object sender, EventArgs e)
{
CheckState CalibrationBussy;
CalibrationBussy = cbDenoise.CheckState;
cbDenoise.Checked = false;
cbDenoise.Show(); // the cbDenoise checkbox doesnt change
cbDenoise.CheckState = CalibrationBussy;
cbDenoise.Show();
}
更新我应该使用Checked而不是checkstate,但问题仍然存在。 (因为Checked实际上是启用vs禁用),其中checkedstate有第三个选项,因为没有确定(用户没有触摸控件)。
bool CalibrationBussy;
CalibrationBussy = cbDenoise.Checked;
cbDenoise.Checked =false;
cbDenoise.Show();
cbDenoise.Checked = CalibrationBussy;
cbDenoise.Show();
不使用CheckState?为什么不省略? –
检查状态确实是错误的,但问题接缝在cbDenoise.Show它不会更新,而在cbCalibrate事件内。 – user3800527
哦,废话......我看到问题,我用尽了咖啡 – user3800527