1. 程式人生 > >Wpf 全域性異常捕獲處理

Wpf 全域性異常捕獲處理

public App()
{
//UI執行緒異常
this.DispatcherUnhandledException += App_DispatcherUnhandledException;
//非UI執行緒異常
AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
}
private void App_DispatcherUnhandledException(object sender, System.Windows.Threading.DispatcherUnhandledExceptionEventArgs e)
{
//可以記錄日誌並轉向錯誤bug視窗友好提示使用者
e.Handled = true;

Notice.Show("抱歉給您帶來不便!訊息:" + e.Exception.Message, "系統錯誤", MessageBoxIcon.Error);

}
private void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
//可以記錄日誌並轉向錯誤bug視窗友好提示使用者
if (e.ExceptionObject is System.Exception)
{

Exception ex = (System.Exception)e.ExceptionObject;

Notice.Show("抱歉給您帶來不便!訊息:" + ex.Message,"系統錯誤",MessageBoxIcon.Error);
}