首页 新闻 会员 周边 捐助

C#中按钮事件的执行时间太长该如何解决

0
悬赏园豆:10 [已解决问题] 解决于 2010-05-09 21:34

按钮按下去,有很多方法要执行,然后这些方法还涉及到很多界面操作,该怎么办?难道都要一个个控件给个委托然后用多线程?

 

有没有更好的办法?

你们一般是怎么做的,特别是一些有界面的软件。

piikee的主页 piikee | 初学一级 | 园豆:160
提问于:2010-04-29 19:50
< >
分享
最佳答案
0

用backgroudworker,这是个专门应对你说的这种问题的一个组件,MSDN中有解释,挺简单的。

另外还有一种方法就是用设计模式中的代理模式。

收获园豆:10
ReadQi | 菜鸟二级 |园豆:311 | 2010-05-08 18:10
其他回答(4)
0

执行太长肯定要加多线程,但是有的需求不允许,需要用户等待,这样只能提示些友好的信息,如正在加载或执行中。但最好是锁定当前的操作,让其后台执行,使用多线程,让用户还可以做其它的操作,不然就死了。

Astar | 园豆:40805 (高人七级) | 2010-04-29 21:44
0

new Thread(()=>{

button.Enable = false;

//DoWork;

button.Enable = true;

}).Start();

I,Robot | 园豆:9783 (大侠五级) | 2010-04-30 16:36
0

目前这个问题我还是使用多线程吧!其他的不知道有没有好方法。

qianlifeng | 园豆:177 (初学一级) | 2010-05-04 10:06
0

和安装向导类似,下一步,下一步,Finish。

winzheng | 园豆:8797 (大侠五级) | 2010-05-05 23:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册