BackGroundWorker是微軟提供的封裝好了的,非常實用的控件,我們可以在控件中將其拖到Winform之中,然后簡單的系統生成代碼式的編輯事件處理。
以下是,比較經典且簡單的實用,后面的一篇較復雜,不使用微軟控件式,自行生成,並傳遞參數給多線程,並通過多線程更新主線程的多處UI,線程沒操作完一筆記錄,則報告進度,更新UI。
下圖是微軟提供給我們的控件,拖到Winform中
我們可以看到有如下三個事件:
1、線程執行的動作,一般用於復雜操作,DoWork
2、線程進度改變,進度條變化
3、線程執行完,這時候,又回到主線程執行了,可以訪問主線程中的UI,操作主線程的UI
下列是最基本的核心代碼,只給出最核心部分,其他簡單部分省略。
如果我主線程要傳遞參數,以及多線程如何接受參數,可以參考多線程按F12去查看微軟給出的操作,一般較多的是DataTable類型的,這個也是最常用的,可以參考筆者之前的關於多線程的一些比較實用的文章。
分享共進步!
謝謝閱讀!