一、应用场景:
1.耗时 2.UI响应的及时性 3.多线程向界面报告进度
二、重要方法
backgroundWorker1.RunWorkerAsync 开始后台操作
三、重要事件
backgroundWorker1.DoWork ————核心代码 做事的地方,不应该控制UI对象,调用RunWorkerAsync时触发DoWork
backgroundWorker1.ProgressChanged————进程改变时,可以访问UI控件
backgroundWorker1.RunWorkerCompleted———结束触发(正常结束、出错、取消)
四、简单使用范式:
1.在backgroundWorker1.DoWork编写做事代码,事请做完后,结果给e.Result。做事过程中 通过backgroundWorker1.ReportProgress(进度值)报告进度
2.在backgroundWorker1.ProgressChanged通过e.ProgressPercentage来获取进度
3.在backgroundWorker1.RunWorkerCompleted通过e.Result来获取结果,若出错,e.erro获取