首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

对一个WinForm设置enabled=false,为什么还会响应Click事件?该怎么处理

2012-01-23 
对一个WinForm设置enabledfalse,为什么还会响应Click事件?一个WinForm,中有Button1,Button2,运行Button1

对一个WinForm设置enabled=false,为什么还会响应Click事件?
一个WinForm,中有Button1,Button2,
运行Button1时,先设置WinForm的enabled=false,然后执行一个长事件的方法,这时单击Button2,不执行任何事件。当Button1的事件执行完毕后,设置WinForm的enabled=true,这时刚才点击的Button2的事件才响应。
为什么Enabled=false了,还会响应Click事件?能否不让响应?

[解决办法]
你的是单线程的程序?BUTTON1的事件很长,理论上单线程是单击不了BUTTON2的吧

再说,你在BUTTON1的事件中加入“button2.enable = false”不就行了?
[解决办法]

button2.enable = false;

//事件处理
button2.enable =true;
[解决办法]
在Button1的事件里开始的时候用-=把Button2的事件去掉,在长时间操作完成后再用+=添加上就OK了

热点排行