码迷,mamicode.com
首页 > 其他好文 > 详细

BackGroundWorker控件的使用注意

时间:2014-10-22 10:45:18      阅读:259      评论:0      收藏:0      [点我收藏+]

标签:http   ar   使用   sp   div   on   ad   ef   line   

该控件有三个事件:
DoWork 、ProgressChanged 和 RunWorkerCompleted
在程序中调用RunWorkerAsync方法则会启动DoWork事件的事件处理,当在事件处理过程中,调用 ReportProgress方法则会启动ProgressChanged事件的事件处理,而当DoWork事件处理完成时,则会触发RunWorkerCompleted事件。
您必须非常小心,确保在 DoWork 事件处理程序中不操作任何用户界面对象。而应该通过 ProgressChanged和 RunWorkerCompleted 事件与用户界面进行通信。

ProgressChanged事件

在DoWork事件的处理过程中,如果调用ReportProgress则会发生该事件。
void backgroundWorker1_ProgressChanged( Object^ sender, ProgressChangedEventArgs^ e )
先来说说ReportProgress的两种重载:
void ReportProgress(int percentProgress)
void ReportProgress(int percentProgress,Object^ userState)
ProgressChanged事件处理程序的第二个参数e有一个ProgressPercentage属性,它就由ReportProgress的第一个参数percentProgress来提供。这个参数一般用来报告该后台操作完成的进度,然后用ProgressChanged的第二个参数e的ProgressPercentage属性来获取该进度信息。如果用户还想传递更多的信息,可以使用ReportProgress的第二种重载,它的第二个参数userState将会传递给ProgressChanged事件的参数e的UserState属性。

BackGroundWorker控件的使用注意

标签:http   ar   使用   sp   div   on   ad   ef   line   

原文地址:http://www.cnblogs.com/zhayunjia/p/4042435.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!