先看一個小例子:C#客戶端打開一個控件,控件中加載了好多數據大約要用5秒中,如果我們直接打開控件,那麼這個控件就要5秒中才能彈出來,當然這個時候用戶已經把他Kill了。這個時候我們就需要先給用戶把控件UI加載出來,給出來一個假象,然後數據在後台加載就OK了。具體看一下怎麼做。
首先在面板中加載一個BackgroundWorder組件,然後在加載窗體中時注冊幾個事件:
1.BackgroundWorder啟動事件。就是加載後台5秒中代碼;BackgroundWorder.DoWork事件;
2.BackgroundWorder加載中事件。這個事件可以寫當前的加載進度,或者錯誤事件;BackgroundWorder.ProgressChanged事件;
3.BackgroundWorder結束事件。就是數據加載完畢做什麼事情或者異步出錯給出提示什麼的,
BackgroundWorder.RunWorkerCompleted事件。