• Windows Phone 应用程序的生命周期(二)


    一.App.xaml.cs

    /// <summary>
            /// Application 对象的构造函数。
            /// </summary>
            public App()
            {
                // 未捕获的异常的全局处理程序。
                UnhandledException += Application_UnhandledException;
    
                // 标准 XAML 初始化
                InitializeComponent();
    
                // 特定于电话的初始化
                InitializePhoneApplication();
    
                // 语言显示初始化
                InitializeLanguage();
    
                // 调试时显示图形分析信息。
                if (Debugger.IsAttached)
                {
                    // 显示当前帧速率计数器。
                    Application.Current.Host.Settings.EnableFrameRateCounter = true;
    
                    // 显示在每个帧中重绘的应用程序区域。
                    //Application.Current.Host.Settings.EnableRedrawRegions = true;
    
                    // 启用非生产分析可视化模式,
                    // 该模式显示递交给 GPU 的包含彩色重叠区的页面区域。
                    //Application.Current.Host.Settings.EnableCacheVisualization = true;
    
                    // 通过禁用以下对象阻止在调试过程中关闭屏幕
                    // 应用程序的空闲检测。
                    //  注意: 仅在调试模式下使用此设置。禁用用户空闲检测的应用程序在用户不使用电话时将继续运行
                    // 并且消耗电池电量。
                    PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled;
                }
                Debug.WriteLine(string.Format("{0}-app被初始化",DateTime.Now.ToLongTimeString()));
    
            }
    
            // 应用程序启动(例如,从“开始”菜单启动)时执行的代码
            // 此代码在重新激活应用程序时不执行
            private void Application_Launching(object sender, LaunchingEventArgs e)
            {
                Debug.WriteLine(string.Format("{0}-Launching事件被触发", DateTime.Now.ToLongTimeString()));
            }
    
            // 激活应用程序(置于前台)时执行的代码
            // 此代码在首次启动应用程序时不执行
            private void Application_Activated(object sender, ActivatedEventArgs e)
            {
                Debug.WriteLine(string.Format("{0}-Activated事件被触发", DateTime.Now.ToLongTimeString()));
            }
    
            // 停用应用程序(发送到后台)时执行的代码
            // 此代码在应用程序关闭时不执行
            private void Application_Deactivated(object sender, DeactivatedEventArgs e)
            {
                Debug.WriteLine(string.Format("{0}-Deactivated事件被触发", DateTime.Now.ToLongTimeString()));
            }
    
            // 应用程序关闭(例如,用户点击“后退”)时执行的代码
            // 此代码在停用应用程序时不执行
            private void Application_Closing(object sender, ClosingEventArgs e)
            {
                Debug.WriteLine(string.Format("{0}-Closing事件被触发", DateTime.Now.ToLongTimeString()));
            }

    二.操作方法及输出结果

    18:40:22-app被初始化
    18:40:31-Launching事件被触发-----(应用程序启动)(例如,从“开始”菜单启动)
    点击“启动”按钮,切换到“开始”屏幕
    18:42:42-Deactivated事件被触发----(停用应用程序)
    点击“后退”按钮,返回到应用程序
    18:45:31-Activated事件被触发----激活应用程序(置于前台)
    继续点击“后退”
    18:48:58-Closing事件被触发-----应用程序关闭(例如,用户点击“后退”)

    三附加效果图

  • 相关阅读:
    EXCEL文本转数值方法我找的好苦啊(转) Kevin
    C# 自定义控件和自定义事件 Kevin
    MVC3 示例项目中 Authentication 验证密码错误。 Kevin
    如何选定文件或文件夹
    软件工程师的必修课:PKM
    “个人知识管理”的定义和包含的内容
    如何评价一个专业性的工具软件
    教你从“搜索”的角度来选取个人知识管理软件
    国内领先的PKM(个人知识库管理)工具
    如果界面还不行就跳闽江
  • 原文地址:https://www.cnblogs.com/lqsilly/p/3487986.html
Copyright © 2020-2023  润新知