在C# WinForm中,当单击CheckBox控件时,会连续触发CheckBox的CheckedChanged事件两次。这是怎么原因啊???如何解决呢???解决就给分!!!

解决方案 »

  1.   

    是不是有的地方对checkbox重新赋值了?重新赋值也会调用事件的
      

  2.   

    可以在程序中增加一个_EnableEvent字段,缺省为true;
            private bool _EnableEvent = true;        private void checkBox1_CheckedChanged(object sender, EventArgs e)
            {
                if (!_EnableEvent)
                    return;            _EnableEvent = false;
                checkBox1.Checked = true;
                _EnableEvent = true;
                 
                
            }
      

  3.   

    你这是第一次执行,但是他要的是第二次。我个人的理解,不代表大家的意见。当你选择checkbox的时候值发生改变会执行一次,当你选完值的时候又发生改变,会再执行一次。这只是我个人的理解。我具体的也没去msdn上查,高人来了会给你个很好的解答