2016-12-26 3 views
1

Ich habe ein Projekt, das in Windows Forms gemacht wurde, also muss ich es schrittweise zu WPF migrieren; Ich habe alle meine Formulare/Klassen in ein neues WPF-Projekt kopiert.

Alles funktioniert problemlos, aber jedes Mal, wenn ich versuche, eine Ausnahme zu erfassen, die von [Windows Forms] -Formularen generiert wurde, kann das Ereignis DispatcherUnhandledException es nicht fangen.WPF + Windows Forms Fehlerbehandlung

Was soll ich tun, um alle Ausnahmen von [Windows Forms] -Formularen in Application.DispatcherUnhandledException Ereignis zu fangen?

Edit 1:
I Anwendungsereignisse bin mit DispatcherUnhandledException behandeln Wenn ich einen Haltepunkt auf dem Ereigniscode setzen, ist es nicht nur Schritt nicht durch.
Die Art und Weise, wie ich die Ausnahmen behandle, ist die gleiche wie bei allen meinen WPF-Anwendungen, nur das Projekt unterscheidet sich dadurch von den [Windows Forms] -Formularen.

Wenn ich Ausnahme von einem WPF-Fenster auslösen, funktioniert es perfekt, aber wenn ich es auf [Windows Forms] Formular nicht funktioniert.

Danke in Beratung.

+0

Wie behandeln Sie diese Application.DispatcherUnhandledException? Sie können sich MSDN, https://msdn.microsoft.com/en-us/library/system.windows.application.dispatcherunhandledexception.aspx –

+0

über Anwendungsereignisse ansehen. – Poncianux

+0

Sie könnten versuchen, einen automatisierten Handler zu verwenden, wenn Sie möchten https://github.com/gaufininteractive/onetrueerror.server – jgauffin

Antwort

0

Scheint seltsam. Wenn Sie MVVM verwenden, sind alle Ihre App-Fehler in Ihrem ViewModel und einfach mit einem try..catch zu erfassen. Wenn nicht MVVVM, fügen Sie einfach try catch zu jeder Methode in Ihrer Code-Behind-Klasse hinzu.

+0

Die seltsamste Sache ist, dass ich den gleichen Code für das Einfangen der Ausnahme im Windows Forms Projekt erhielt, aber scheint, dass WPF + Windows Forms anders funktioniert. – Poncianux