2016-03-31 140 views
0

我在c#winform應用程序中級聯下拉菜單,我從wcf服務獲取數據並填充下拉菜單。我想如果在我的事件處理程序中發生任何異常,那麼我應該能夠拋出異常到指定的方法。 這可能嗎?任何此語法?我們可以拋出異常到特定的方法c#嗎?

像這樣

MethodName(throw); 
+0

這個的語法很簡單Try&Catch。在這種情況下,除此之外沒有其他要求:) – MajkeloDev

回答

2

不,你不能拋出異常的具體方法。例外總是讓調用堆棧起泡。

您可以通過調用另一種方法來處理異常。在這種情況下,只通過例外:

try 
{ 
} 
catch (Exception ex) 
{ 
    ShowErrorToUser(ex); 
} 

private void ShowErrorToUser(Exception ex) 
{ 
    MessageBox.Show(ex.Message); 
} 
+0

以及如果在該方法中,我想檢查它是哪種類型的異常?像4,5型 – Mohsin

+0

像這樣的東西? 'if(ex是SomeException){...}' –

+0

謝謝。學到新詞「是」。不知道它存在。謝了哥們 ;) – Mohsin

0

沒有內置的方法來做到這一點。異常會引發和(簡化)冒泡調用堆棧。因此它總是必須是調用層次結構中的一個方法,以捕獲異常。

您需要添加一個調用方法來處理catch塊中的異常。

相關問題