1. 程式人生 > >簡單的BackGroundWorker多執行緒時時重新整理UI介面,並顯示進度

簡單的BackGroundWorker多執行緒時時重新整理UI介面,並顯示進度

 

BackGroundWorker是微軟提供的封裝好了的,非常實用的控制元件,我們可以在控制元件中將其拖到Winform之中,然後簡單的系統生成程式碼式的編輯事件處理。

以下是,比較經典且簡單的實用,後面的一篇較複雜,不使用微軟控制元件式,自行生成,並傳遞引數給多執行緒,並通過多執行緒更新主執行緒的多處UI,執行緒沒操作完一筆記錄,則報告進度,更新UI。

 

下圖是微軟提供給我們的控制元件,拖到Winform中

 

我們可以看到有如下三個事件:

1、執行緒執行的動作,一般用於複雜操作,DoWork

2、執行緒進度改變,進度條變化

3、執行緒執行完,這時候,又回到主執行緒執行了,可以訪問主執行緒中的UI,操作主執行緒的UI

 

下列是最基本的核心程式碼,只給出最核心部分,其他簡單部分省略。

 

如果我主執行緒要傳遞引數,以及多執行緒如何接受引數,可以參考多執行緒按F12去檢視微軟給出的操作,一般較多的是DataTable型別的,這個也是最常用的,