簡體   English   中英

當BackgroundWorker拋出錯誤時,如何防止Visual Studio彈出

[英]How can I prevent visual studio from poping up when my BackgroundWorker throws an error

調試我的應用程序時,我會一直看到這樣的消息:

xxxxx.exe中出現“xxxx.xxxxx”類型的異常,但未在用戶代碼中處理。

問題是我有BackgroundWorkers在他們的DoWork中拋出異常,然后通過檢查RunWorkerCompleted事件中的RunWorkerCompletedEventArgs.Error來處理這些異常 - 它在運行時運行良好。

有沒有辦法阻止視覺工作室將這些顯示為“未處理”?

這不是將DoWork中的錯誤返回給UI的正確方法嗎?

我嘗試使異常擴展ApplicationException並取消在例外對話框中的ApplicationException旁邊的框,但它仍然顯示。

您需要捕獲並處理DoWork方法調用的方法中的異常。 我的建議是捕獲異常,然后使用ReportProgress事件將其報告回接口以便順利處理/通知。 您不希望“吞下”異常,但此報告將允許您優雅地記錄異常或以較少侵入方式通知用戶。

請記住,您需要使用允許使用自定義userStateReportProgress重載,以便您可以報告正確的進度或附加完整的異常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM