2011年8月4日 星期四

#VB 此 BackgroundWorker 指出它不會回報進度。請修改 WorkerReportsProgress,以表示它會確實回報進度。

        '如果有回報進度,記得設定 WorkerReportsProgress = True
        BackgroundWorker1.WorkerReportsProgress = True
        '如果有支援取消背景執行,記得設定 WorkerSupportsCancellation = True
        BackgroundWorker1.WorkerSupportsCancellation = True


此 BackgroundWorker 指出它不會回報進度。請修改 WorkerReportsProgress,以表示它會確實回報進度。
http://www.blueshop.com.tw/board/show.asp?subcde=BRD20100711021626LFP&fumcde=FUM20050124192253INM

1, WorkerReportsProgress 設為 True 才能回報進度, 是 BackgroundWorker 本身設計的規範
2. BackgroundWorker 的 ProgressChanged, RunWorkerCompleted 是在原執行緒觸發, 可直接改控制項屬性, DoWork 是在背景執行緒觸發, 不可直接改控制項屬性
3. 執行多久會受到外在環境影響, 不可能有任何一個物件能精準的用時間告知進度, 僅能由寫程式的人"主觀"訂定進度 

沒有留言:

張貼留言