2016-12-26 12 views
1

Windowsフォームで作成されたプロジェクトがあるので、徐々にWPFに移行する必要があります。すべてのフォーム/クラスを新しいWPFプロジェクトにコピーしました。

すべてがうまく動作しますが、[Windowsフォーム]フォームから生成された例外をキャッチしようとすると、DispatcherUnhandledExceptionイベントはそれをキャッチしません。WPF + Windowsフォームエラー処理

[Windowsフォーム]フォームのすべての例外をApplication.DispatcherUnhandledExceptionイベントにキャッチするにはどうすればよいですか?

編集1:
私は、イベントコードにブレークポイントを置く場合は、それだけによるステップしないDispatcherUnhandledException を処理するために、アプリケーションのイベントを使用しています。
私が例外を処理する方法は、すべてのWPFアプリケーションと同じですが、このプロジェクトを異なるものにするのは[Windowsフォーム]フォームの包含です。

私はWPFウィンドウから例外をスローすると完全に動作しますが、[Windowsフォーム]フォームでは機能しません。

アドバイスありがとうございます。

+0

このApplication.DispatcherUnhandledExceptionはどのように処理しますか? MSDNをご覧ください。https://msdn.microsoft.com/en-us/library/system.windows.application.dispatcherunhandledexception.aspx –

+0

アプリケーションイベント – Poncianux

+0

あなたが望む場合は、自動ハンドラを使用することができますhttps://github.com/gauffininteractive/onetrueerror.server – jgauffin

答えて

0

と思われます。 MVVMを使用している場合、すべてのアプリケーションエラーがViewModelにあり、try..catchで簡単にキャプチャできます。 MVVVMでない場合は、コードビハインドクラスの各メソッドにtry catchを追加するだけです。

+0

それは私がWindows Formsプロジェクトで例外をキャッチするために同じコードを持っているが、WPF + Windowsフォームが異なるように見えるということで最も奇妙なことです。 – Poncianux

関連する問題