Check Exception type for DispatcherUnhandledException : Exception « Windows Presentation Foundation « C# / CSharp Tutorial






<Application 
    x:Class="DispatcherUnhandledExceptionSample.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    StartupUri="MainWindow.xaml" 
    DispatcherUnhandledException="App_DispatcherUnhandledException" />

//File:Window.xaml.cs
using System;
using System.Diagnostics;
using System.Windows;
using System.Data;
using System.Xml;
using System.Configuration;
using System.Windows.Threading;

namespace DispatcherUnhandledExceptionSample
{
    public partial class App : Application
    {
        void App_DispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e)
        {
            bool shutdown = false;

            if (e.Exception is DivideByZeroException)
            {
                shutdown = false;
            }
            else if (e.Exception is ArgumentNullException)
            {
                shutdown = true;
            }

            if (shutdown)
            {
                MessageBoxResult result = MessageBox.Show("Application must exit:\n\n" + e.Exception.Message + "\n\nSave before exit?", "app", MessageBoxButton.YesNo, MessageBoxImage.Error);
                if (result == MessageBoxResult.Yes)
                {
                }
                EventLog.WriteEntry("app", "Unrecoverable Exception: " + e.Exception.Message, EventLogEntryType.Error);
                this.Shutdown(-1);
            }
            e.Handled = true;
        }
    }
}
WPF Check Exception Type For Dispatcher Unhandled Exception








24.128.Exception
24.128.1.Cross Thread Exception RaisingCross Thread Exception Raising
24.128.2.Cross Thread Exception Raising WorkerThreadCross Thread Exception Raising WorkerThread
24.128.3.Check Exception type for DispatcherUnhandledExceptionCheck Exception type for DispatcherUnhandledException
24.128.4.Raise exception from button click eventRaise exception from button click event
24.128.5.Security ExceptionSecurity Exception
24.128.6.Throw Handled ExceptionThrow Handled Exception
24.128.7.Throw Unhandled ExceptionThrow Unhandled Exception
24.128.8.Throw Unhandled Exception From ThreadThrow Unhandled Exception From Thread
24.128.9.Customize UpdateSourceExceptionFilterCustomize UpdateSourceExceptionFilter
24.128.10.Manage unhandled exceptions that are thrown on secondary worker threads.Manage unhandled exceptions that are thrown on secondary worker threads.
24.128.11.Throw Exception from button click actionThrow Exception from button click action
24.128.12.Catch XamlParseExceptionCatch XamlParseException
24.128.13.Manage unhandled exceptions that are thrown on secondary user interface (UI) threads.Manage unhandled exceptions that are thrown on secondary user interface (UI) threads.