Learn how to handle all of the exceptions from your WPF applications in one place. Avoid writing Try/Catch blocks everywhere in your code unless you really need them. Please note: You would still continue to write Try/Catch Blocks around your logical piece of code, to catch specific exceptions such as File IO, Cast Exceptions e.t.c.
In XAML, we can hook an event to the entire application that would be triggered when an error occurs in the application.
We could do this in the Overriden OnStartup event in the App.xaml.cs
An excerpt is show below:
protected override void OnStartup(StartupEventArgs e){ Application.Current.DispatcherUnhandledException += new DispatcherUnhandledExceptionEventHandler(AppDispatcherUnhandledException); base.OnStartup(e); } void AppDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e){ //do whatever you need to do with the exception //e.Exception e.Handled = true;}