2010-11-19 17 views
0

Bir Silverlight projesi bir istisna atarsa, devam etmeden önce onaylanması gereken bir "komut dosyası hatası" iletişim kutusunu kaldırır. Bir HTML sayfasındaki içeriğin bir parçası olarak Silverlight kullanıyoruz, ancak söz konusu içerik kullanılamıyorsa hata iletişim kutusunun görüntülenmesini istemiyoruz. Bunun yerine, betik hatasını bir kütüğe yazıyoruz ve bunu yeterli buluyoruz.Silverlight hatalarının bir hata iletişim kutusu açmasını durdurmak mümkün mü?

Bu iletişim kutusunun yakalanmamış bir istisnada görünmesini önlemek mümkün mü? Tüm istisnaları yakalamak ve ele almak için tek çözüm mü? "OnError" parametresini "onSilverlightError" değeriyle kaldırmayı denedim, ancak bu fark yaratmadı. App.xaml.cs içinde

cevap

2

"ReportErrorToDOM" olay işleyicisi olacak, tamamen işleyicinin içindeki tüm kodu yorum, sonra herhangi bir iletişim kutusu görmezsiniz.

private void ReportErrorToDOM(ApplicationUnhandledExceptionEventArgs e) 
    { 
     try 
     { 
      //string errorMsg = e.ExceptionObject.Message + e.ExceptionObject.StackTrace; 
      //errorMsg = errorMsg.Replace('"', '\'').Replace("\r\n", @"\n"); 

      //System.Windows.Browser.HtmlPage.Window.Eval("throw new Error(\"Unhandled Error in Silverlight Application " + errorMsg + "\");"); 
     } 
     catch (Exception) 
     { 
     } 
    } 

kodunuz çok az olabilir, yalnızca olay işleyicisindeki tüm kodları yorumlayın, ardından tamam olmalısınız.

İlgili konular