【发布时间】:2013-05-31 23:53:42
【问题描述】:
我需要实现一个复选框以在启用/禁用某些控件的两种方法之间切换。我正在使用以下代码,我也尝试过其他方式但没有运气。
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
if (checkBox1.Checked)//this is working
{
trackBar2.Enabled = false;
button3.PerformClick();
textBox8.Enabled = true;
}
else// this is supposed to work if checkbox is unchecked but doesn't work
{
trackBar2.Enabled = true;
textBox8.Enabled = false;
}
}
我得到的结果总是一样的。如果我选中复选框,则满足第一个条件并且很好。如果我取消选中文本框,什么都不会发生,也不会回到第一个条件。 如何检测已选中/未选中的条件?
【问题讨论】:
-
我更喜欢 Click 事件进行这种处理。
-
你的 button3.PerformClick() 会改变复选框的状态吗?您是否曾经手动删除或添加复选框的事件?这似乎应该按原样工作,奇怪的是它没有
-
您的原始代码对我有用...
-
@Idle_Mind,这很有趣。它不适合我!不过感谢您的测试。我按照 Vink 的回答解决了问题。
标签: c# if-statement checkbox user-controls