在一個程序中,一些耗時的操作,在長時間運行時可能會導致用戶界面 (UI) 處於停止響應狀態,用戶在這操作期間無法進行其他的操作,為了不使UI層處於停止響應狀態,需要將這些耗時的操作,設置為后台線程,並且在UI層可以展示后台操作的進度,比較常用的方法有使用線程以及BackgroundWorker ...
要求異步進行 設置 說明: 開始函數: backgroundWorker .RunWorkerAsync 參數a ,觸發DoWork事件,見參數a傳給事件的DoWorkEventArgs參數 用e.Argument接收參數 。 在dowork事件中進行函數體操作,在實踐中用ReportProgress 參數 ,或者參數 方法,將會觸發ProgressChanged事件 在ProgressChang ...
2017-07-01 18:15 0 2466 推薦指數:
在一個程序中,一些耗時的操作,在長時間運行時可能會導致用戶界面 (UI) 處於停止響應狀態,用戶在這操作期間無法進行其他的操作,為了不使UI層處於停止響應狀態,需要將這些耗時的操作,設置為后台線程,並且在UI層可以展示后台操作的進度,比較常用的方法有使用線程以及BackgroundWorker ...
這幾天做項目懶了就用backgroundworker這個控件,覺得它比多線程方便一些,然后這個線程里面在開線程,然后慘劇就發生了:當我打開一個主窗口后,在打開一個子窗口,子窗口里有個backgroundworker,然后我就啟動了這個dowork,然后就開始執行很耗時的操作,閑着無聊,我點了幾下 ...
在WinForm程序中,有時會因為加載大量數據導致UI界面假死,這種情況對於用戶來說是非常不友好的。因此,在加載大量數據的情況下,首先應該將數據加載放在另一線程中進行,這樣保證了UI界面的響應;其次可以提供一個進度條使用戶明白程序正在加載數據,同時清楚知道目前加載的進度。 實現上述功能 ...
BackgroundWorker 可以用於啟動后台線程。 主要的事件及參數: 1.DoWork——當執行BackgroundWorker.RunWorkerAsync方法時會觸發該事件,並且傳遞DoWorkEventArgs參數; 2.RunWorkerCompleted——異步操作完成 ...
BackgroundWorker控件簡介 使用BackgroundWorker控件可以在后台單獨的線程上執行操作,通常用於數據庫操作、文件下載等相對耗時一般要求后台處理的任務。使用起來比較簡單,如果需要后台處理的任務少的話,①在VS中可以直接從工具箱中拖一個BackgroundWorker ...
參考資料 微軟技術資源庫、百度百科 最近修改公司以前項目看到有BackgroundWorker的使用,發現很是方便。總結出來以供日后使用。 BackgroundWorker 類允許您在單獨的專用線程上運行操作。 耗時的操作(如下載和數據庫事務)在長時間運行時可能會導致 ...
下面是一個簡單的例子: ...
查詢了一下MSDN文檔,其中微軟就BackgroundWorker類的功能有這么一個描述(英文的,根據個人理解翻譯):BackgroundWorker類允許您在單獨的線程上執行某個可能導致用戶界面(UI)停止響應的耗時操作(比如文件下載數據庫事務等),並且想要一個響應式的UI來反應當前耗時操作 ...