C#中 使用 Backgroundworker控制UI线程 防止界面假死情况

在C#.net窗体编程中,非主线程调用该UI界面的时候往往会出现一些界面无响应或者假死的情况,我们可以用Backgroundworker很好的解决这一个问题。

第一步,我们先建立一个Windows应用程序,取名XXX

第二步,我们在左侧工具箱中找到组件下面的BackgroundWorker组件,拖至Form中,为了让大家很好的体验到Background的作用,我们拖放两个Backgroundworker组件到Form中,分别为backgroudworker1和backgroundworker2

第三步,分别选择这两个组件的属性WorkReportsProgress和WorkerSupportsCancellation属性设置为true,先做个小小的解释,WorkReportsProgress:backgroundworker组件的DoWork事件触发的时候,会想backgroundworker组件报告DoWork事件中的执行情况,这样,我们就可以对UI进行相应的抄作,如果暂时看不懂,没关系,可能是我解释得太差了,看了下面的代码大家一定会明白...

第四步,确认第三不工作已经完成的情况下,我们在界面上拖放两个Button,分别为btn1,btn2,以及两个processbar,分别为processbar1,processbar2

第四步,backgroundworker1 组件有三个事件,分别为

 

 

现在我们来让这两个进度条走起来

 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值