アプリケーションが何らかの例外を発生させると、通常、実行されることは、例外がログに記録され、ユーザーに表示され、その重大度に基づいて、アプリを使用し続けるか、アプリを閉じます。
いくつかの例外の場合、
「ディスパッチャーの処理が中断されている間は、この操作を実行できません。」
例外として、UI がユーザーにメッセージを表示できない場合、Dispatcher.BeginInvoke を使用してユーザーにメッセージを非同期的に表示する必要があります。BeginInvoke の問題は、すぐに戻り、メッセージ ボックスが表示された時点からコードが実行され続けることです。ユーザー入力が必要な場合 (はい/いいえダイアログなど)。
では、コードの実行を続行する前に、メッセージ ボックスダイアログを安全に表示し、ユーザーの結果のアクションを待つにはどうすればよいでしょうか?