C#BackgroundWorker的使用

C#BackgroundWorker的使用

ID:37914266

大小:60.00 KB

页数:6页

时间:2019-06-02

C#BackgroundWorker的使用_第1页
C#BackgroundWorker的使用_第2页
C#BackgroundWorker的使用_第3页
C#BackgroundWorker的使用_第4页
C#BackgroundWorker的使用_第5页
资源描述:

《C#BackgroundWorker的使用》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、在使用之前先了解一些知識。1、BackgroundWorker作用:   主要用在單獨的線程上執行操作。BackgroundWorker类允许您在单独的专用线程上运行操作。耗时的操作(如下载和数据库事务)在长时间运行时可能会导致用户界面 (UI) 似乎处于停止响应状态。如果您需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用 BackgroundWorker类方便地解决问题。2、BackgroundWorker常用屬性:名稱說明CancellationPending指示應用程式是否已請求取消後台操作即(是

2、否正在停止中)。IsBusy獲取一個值,指示BackgroundWorker是否正在運行非同步操作。WorkerReportsProgress該值指示BackgroundWorker能否報告進度更新。WorkerSupportsCancellation該值指示BackgroundWorker是否支援非同步取消。3、BackgroundWorker常用事件:控制項名稱說明TextBoxtxtSelect用於顯示被選擇文件的路徑ButtonbtnSelectFile用於選擇文件TextBoxtxtResult用於顯示後台程式執行的

3、結果ProgressBarpgbValue用於顯示背景程式執行的結果ButtonbtnRun用於執行背景程式ButtonbtnCancel用於取消正在執行的背景程式BackgroundWorkerbgwWorker用於後台運行程式4、注意:          運行RunWorkerAsync()方法會觸發DoWork事件           運行ReportProgress()方法會觸發ProgressChanged事件5、使用過程:     5.1在窗體中加入控件5.2加入BackgroundWorker的事件5.3在DoW

4、ork事件的方法中調用需要執行的方法5.4在ProgressChanged事件的方法中顯示進度5.5在RunWorkerCompleted事件的方法中顯示被執行方法的結果6、代碼:   6.1代碼中的控件說明:控件名稱說明TextBoxtxtSelect用於顯示被選擇文件的路徑ButtonbtnSelectFile用於選擇文件TextBoxtxtResult用於顯示後台程序執行的結果ProgressBarpgbValue用於顯示背景程序執行的結果ButtonbtnRun用於執行背景程序ButtonbtnCancel用於取消正在

5、執行的背景程序   6.2代碼(下面代碼作用是將文件轉成swf):using System.ComponentModel;using System.IO;namespace BackgroundWorkerDemo{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();            //“執行背景程序”按鈕事件            btnRun.Click 

6、+= new EventHandler(btnRun_Click);            //“取消背景程序”按鈕事件            btnCancel.Click += new EventHandler(btnCancel_Click);            //是否允許BackgroundWorker 能否报告进度            bgwWorker.WorkerReportsProgress = true;            //選擇文件按鈕方法            btnSelectFile.C

7、lick += new EventHandler(btnSelectFile_Click);            //5.2           //开始执行后台操作時            //当执行BackgroundWorker.RunWorkerAsync方法时会触发该事件,并且传递DoWorkEventArgs参数;            bgwWorker.DoWork += new DoWorkEventHandler(bgwWorker_DoWork);            //引发 ProgressCha

8、nged 事件。 ProgressChanged是负责报告当前程序进度            bgwWorker.ProgressChanged += new ProgressChangedEventHandler(bgwWorker_ProgressChanged);   

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。