0

一連のアクションを実行し、同時にスローする例外に依存するか、例外をスローしない場合はUIを更新しますが、どうすればこのようなことを実現できますか?

ステップごとに新しいスレッドを作成しようとしましたが、ステップの1つが終了するまで待機せず、常に失敗メッセージを書き込みます。Thread.Join()を使用しても、UIスレッドもブロックされるため役に立ちませんでした...

4

1 に答える 1

2

BackgroundWorkerが必要です。実行するコードをバックグラウンドスレッドのDoWorkハンドラーに配置し、UIを更新するコードをRunWorkerCompletedイベントハンドラーに配置します。

ハンドラーから中間のGUIを更新する場合は、次のDoWorkようにUIディスパッチャーでキューに入れることができます-

App.Current.Dispatcher.BeginInvoke((Action)delegate
        {
           // Update GUI here.
        }, null);
于 2013-01-27T08:40:13.637 に答える