1. 程式人生 > >C#中 使用 Backgroundworker控制UI執行緒 防止介面假死情況

C#中 使用 Backgroundworker控制UI執行緒 防止介面假死情況

在C#.net窗體程式設計中,非主執行緒呼叫該UI介面的時候往往會出現一些介面無響應或者假死的情況,我們可以用Backgroundworker很好的解決這一個問題。

第一步,我們先建立一個Windows應用程式,取名XXX

第二步,我們在左側工具箱中找到元件下面的BackgroundWorker元件,拖至Form中,為了讓大家很好的體驗到Background的作用,我們拖放兩個Backgroundworker元件到Form中,分別為backgroudworker1和backgroundworker2

第三步,分別選擇這兩個元件的屬性WorkReportsProgress和WorkerSupportsCancellation屬性設定為true,先做個小小的解釋,WorkReportsProgress:backgroundworker元件的DoWork事件觸發的時候,會想backgroundworker元件報告DoWork事件中的執行情況,這樣,我們就可以對UI進行相應的抄作,如果暫時看不懂,沒關係,可能是我解釋得太差了,看了下面的程式碼大家一定會明白...

第四步,確認第三不工作已經完成的情況下,我們在介面上拖放兩個Button,分別為btn1,btn2,以及兩個processbar,分別為processbar1,processbar2

第四步,backgroundworker1 元件有三個事件,分別為

現在我們來讓這兩個進度條走起來