当前位置:首页 > 芯闻号 > 充电吧
[导读]慢慢开始 Windows Phone 7 编程的学习,工作是比较忙与累,但是还是想学习一下 Windows Phone 7 编程和 Windows 8 编程。计划:一步步来吧,先培训兴趣,再回过头来好

慢慢开始 Windows Phone 7 编程的学习,工作是比较忙与累,但是还是想学习一下 Windows Phone 7 编程和 Windows 8 编程。

计划:一步步来吧,先培训兴趣,再回过头来好好看看 C# 语言。

今天先看了一下 UI 的异常处理的实现:新建一 Silverlight for Windows Phone 7/Windows Phone Application 工程。
在工程中增加一个页面,例如: Page1.xaml,然后在页面中增加一个文本框。示例代码如下:

namespace WindowsPhoneApplicationHello
{
    public partial class Page1 : PhoneApplicationPage
    {
        public static Exception ExceptionInfo;

        public Page1()
        {
            InitializeComponent();
        }
        
        protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            ExceptionText.Text = ExceptionInfo.ToString();
        }
    }
}


在源文件 App.xaml.cs 中,自动生成的代码中有两个用于处理错误和异常的函数,分别是:
(1) RootFrame_NavigationFailed: 处理导航失败
(2) Application_UnhandledException: 处理应用程序所有未处理的
修改 RootFrame_NavigationFailed 函数,增加两行代码。修改后的代码如下:

private void RootFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)
{
     if (System.Diagnostics.Debugger.IsAttached)
     {
          // A navigation has failed; break into the debugger
          System.Diagnostics.Debugger.Break();
      }
      e.Handled = true;
      Page1.ExceptionInfo = e.Exception;
      (RootVisual as Microsoft.Phone.Controls.PhoneApplicationFrame).Source = new Uri("/Page1.xaml", UriKind.Relative);
}


为了测试代码,故意抛出一个异常。增加一个按键,在按键的处理中加入以下的代码:

private void button2_Click(object sender, RoutedEventArgs e)
{
     NavigationService.Navigate(new Uri("NoExist.html",UriKind.Relative));
}


运行结果:当用户点击按键后,在 Page1 页面显示出 error 信息。
但此信息对一般用于来说,是不友好的,需要进一步的处理才能满足真正产品的求。





本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

好用、高效的多合一传感器开发工具,支持给新一代高科技 MEMS 传感器产品开发应用软件

关键字: 传感器 Windows MacOS

双系统将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对双系统的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 双系统 Windows Linux

今天,小编将在这篇文章中为大家带来Windows 11系统的有关报道,通过阅读这篇文章,大家可以对Windows 11系统具备清晰的认识,主要内容如下。

关键字: Windows 操作系统

(全球TMT2023年9月8日讯)亚马逊云科技日前在一年一度的存储服务创新日上宣布推出诸多亚马逊云科技存储服务的新功能,其中重点包括为支持人工智能/机器学习、大数据分析等数据密集型工作负载进一步提升Amazon Ela...

关键字: 亚马逊 FOR IC Windows

此芯科技自去年加入Linaro Windows on Arm工作组之后,发起成立了Client PC合作项目,旨在推动基于UEFI + ACPI标准的Arm PC启动架构标准化,通过统一的系统固件支持Windows和Li...

关键字: Arm PC生态 Windows Linux操作系统

北京2023年3月13日 /美通社/ -- 近日,亚马逊云科技宣布针对其广泛的存储服务推出诸多可帮助客户进一步优化成本的新功能,功能更新涵盖Amazon Simple Storage Service(Amazo...

关键字: 亚马逊 STORAGE LM Windows

量子计算领域的新里程碑,来了! 谷歌科学家证明,通过增加量子比特的数量,就能降低量子计算的错误率。

关键字: 谷歌 Android Windows

QVM人工智能引擎是Qihoo Support Vector Machine(奇虎支持向量机)的缩写。是360完全自主研发的第三代引擎(具有中国的自主知识产权的引擎)。

关键字: 微软 Windows 系统

据业内信息报道,近日微软公司正式结束了对于Windows7操作系统的付费外延扩展支持,未来也不再为Windows7提供安全更新。

关键字: 微软 Windows 操作系统

开源开放的RISC-V已经成为仅次于ARM、x86的第三大CPU指令集,也受到了各大芯片厂商的重视,然而要想进入主流市场,还需要一些突破,其中谷歌安卓系统的支持至关重要,好消息是谷歌已经表态支持RSIC-V架构,并且重视...

关键字: 谷歌 Android Windows
关闭
关闭