データバインドされたプロパティゲッター(およびセッターによってスローされる例外をキャッチするアプリケーション全体のメソッドを探していますが、それほど問題はありません。これらのイベントのWPFデータバインディング:プロパティゲッターによってスローされた例外をキャッチ
なしゲッターによってスローされた例外をキャッチしません:
AppDomain.CurrentDomain.UnhandledException
Application.Current.DispatcherUnhandledException
Application.Current.Dispatcher.UnhandledException
もう一つのアイデアは、this threadで説明したようにUpdateSourceExceptionFilterでカスタムバインディング・クラスを使用することです。残念ながら、このメソッドはgetterではなくプロパティセッターで例外をキャッチします。
私が見た最後のオプションは、PresentationTraceSourcesトレースリスナを使用することです:
PresentationTraceSources.Refresh();
PresentationTraceSources.DataBindingSource.Listeners.Add(new PresentationLoggingTraceListener());
PresentationTraceSources.DataBindingSource.Switch.Level = SourceLevels.Error;
この方法は、私が欲しいものを基本的にやるように見えるん。残念なことに、それは私に文字列を与え、例外ではなく、実際のエラーを得るために少しだけ構文解析をしなければならないという意味です。
TraceListenerメソッドはおそらく最後には機能しますが、ちょっとハックしたようです。私が紛失しているオプションが他にありますか、TraceListenerにかなり拘束されていますか?
私はこの回答を見たいと思います。 –