App()
{
this.Startup += App_Startup;
}
private void App_Startup(object sender, StartupEventArgs e)
{
this.DispatcherUnhandledException += App_DispatcherUnhandledException;
AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
TaskScheduler.UnobservedTaskException += TaskScheduler_UnobservedTaskException;
}
//主執行緒未處理異常
private void App_DispatcherUnhandledException(object sender, System.Windows.Threading.DispatcherUnhandledExceptionEventArgs e)
{
//HandyControl.Controls.Growl.Error($"應用程式遇到未處理的異常:{e.Exception.Message}");
e.Handled = true;
}
//未處理執行緒異常(如果主執行緒未處理異常已經處理,該異常不會觸發)
private void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
if (e.ExceptionObject is Exception ex)
{
//HandyControl.Controls.Growl.Error($"應用程式遇到未處理的異常:{ex.Message}");
}
}
//未處理的Task內異常
private void TaskScheduler_UnobservedTaskException(object sender, UnobservedTaskExceptionEventArgs e)
{
//HandyControl.Controls.Growl.Error($"應用程式遇到未處理的異常:{e.Exception.Message}");
}
wpf 捕獲全域性異常
相關文章
- SpringBoot之全域性捕獲異常Spring Boot
- Android 全域性異常捕獲之CrashHandlerAndroid
- Android-AsyncTask及UncaughtExceptionHandler捕獲全域性性異常(ANR、FC)AndroidException
- 如何自定義一個全域性異常捕獲器-SpiderManIDE
- 捕獲 React 異常React
- iOS異常捕獲iOS
- python異常捕獲Python
- flex全域性異常Flex
- android 異常捕獲-UncaughtExceptionHandlerAndroidException
- 記錄Javascript 異常捕獲JavaScript
- PHP使用trycatch,捕獲異常PHP
- 【筆記】forall 異常捕獲筆記
- 前端異常捕獲與上報前端
- PLSQL宣告部分異常捕獲SQL
- 儲存過程——異常捕獲&列印異常資訊儲存過程
- python中如何捕獲異常Python
- JS 使用try catch捕獲異常JS
- Auth 授權的異常捕獲
- 異常的捕獲及處理
- python動態捕獲異常Python
- oracle異常捕獲程式碼(轉)Oracle
- 談談前端異常捕獲與上報前端
- DRF之異常捕獲原始碼分析原始碼
- 捕獲不到異常嘗試除以0
- spring 全域性異常處理Spring
- 前端JavaScript 常見的報錯及異常捕獲前端JavaScript
- C# winform NLog AOP 記錄全域性未捕獲的異常到日誌C#ORM
- 異常處理機制(二)之異常處理與捕獲
- spring-boot 統一異常捕獲Springboot
- 在 C++ 中捕獲 Python 異常C++Python
- iOS 日誌重定向和異常捕獲iOS
- C#中有關異常的捕獲演示C#
- springboot 全域性異常攔截器,友好異常提示Spring Boot
- Auto.js Pro 資料獲取 與 異常捕獲JS
- springboot全域性異常處理Spring Boot
- Spring-全域性異常攔截Spring
- .netcore全域性異常處理NetCore
- ASP.NET 全域性異常處理ASP.NET