在做大量的運算處理時,不能避免的有時候會需要做 UI 更新的動作,以給予使用者一些反饋。理想上來說,這時我們應該將處理動作切離主執行緒,在另外一個執行緒去處理,需要反饋時再將更新動作帶回主執行緒。但難免有時會偷懶將處理動作直接放在主執行緒上運行,並利用 DoEvents 去釋放資源,讓 UI 得以更新。
以這樣的情景來說,WinForm 中可直接叫用現成的 DoEvents ,但在 WPF 中則無現成的方法可供叫用,所以我們必須借用 WinForm 的 DoEvents 方法。
只要將 System.Windows.Forms.dll
組件加入參考,接著將命名空間 System.Windows.Forms
加入,再呼叫 Application.DoEvents()
方法即可。
1 | using System.Windows.Forms; |
或者是自行撰寫像下面這樣的程式來處理也可以。
1 | void DoEvents(){ |