silverlight的程序由两部门组成,一个是silverlight的库,别一个是承载这个库的程序(网页,窗体程序)
silverlight启动的时候是从app.xaml中开始,这个文件类似于C#别的program.cs这个文件。
C#项目是从main 函数中开始执行的而silverlight则是从
private void Application_Startup(object sender,StartupEventArgs e)
{
this.RootVisual = new MainPage();
}
这个事件开始,类似 windows服务的开始方式
private void Application_Exit(object sender,EventArgs e)
{
}
下面这段是silverlight程序遇到错误向页面抛错误信息
private void Application_UnhandledException(object sender,ApplicationUnhandledExceptionEventArgs e)
{
// 如果应用程序是在调试器外运行的,则使用浏览器的
// 异常机制报告该异常。在 IE 上,将在状态栏中用一个
// 黄色警报图标来显示该异常,而 Firefox 则会显示一个脚本错误。
if (!System.Diagnostics.Debugger.IsAttached)
{
// 注意: 这使应用程序可以在已引发异常但尚未处理该异常的情况下
// 继续运行。
// 对于生产应用程序,此错误处理应替换为向网站报告错误
// 并停止应用程序。
e.Handled = true;
Deployment.Current.dispatcher.BeginInvoke(delegate { ReportErrorTodoM(e); });
}
}
下面这段还没弄明白是干什么的
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)
{
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。