Herald.App.OnLaunched C# (CSharp) Метод

OnLaunched() защищенный Метод

在应用程序由最终用户正常启动时进行调用。 当启动应用程序以打开特定的文件或显示搜索结果等操作时, 将使用其他入口点。
protected OnLaunched ( LaunchActivatedEventArgs e ) : void
e LaunchActivatedEventArgs 有关启动请求和过程的详细信息。
Результат void
        protected override void OnLaunched(LaunchActivatedEventArgs e)
        {
#if DEBUG
            if (System.Diagnostics.Debugger.IsAttached)
            {
                this.DebugSettings.EnableFrameRateCounter = true;
            }
#endif

            Frame rootFrame = Window.Current.Content as Frame;

            // 不要在窗口已包含内容时重复应用程序初始化,
            // 只需确保窗口处于活动状态
            if (rootFrame == null)
            {
                // 创建要充当导航上下文的框架,并导航到第一页
                rootFrame = new Frame();

                // TODO: 将此值更改为适合您的应用程序的缓存大小
                rootFrame.CacheSize = 1;

                if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
                {
                    // TODO: 从之前挂起的应用程序加载状态
                }

                // 将框架放在当前窗口中
                Window.Current.Content = rootFrame;
            }

            if (rootFrame.Content == null)
            {
                // 删除用于启动的旋转门导航。
                if (rootFrame.ContentTransitions != null)
                {
                    this.transitions = new TransitionCollection();
                    foreach (var c in rootFrame.ContentTransitions)
                    {
                        this.transitions.Add(c);
                    }
                }

                rootFrame.ContentTransitions = null;
                rootFrame.Navigated += this.RootFrame_FirstNavigated;

                // 当导航堆栈尚未还原时,导航到第一页,
                // 并通过将所需信息作为导航参数传入来配置
                // 新页面
             Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
             if (localSettings.Values.ContainsKey("Status"))
             {
                     if (localSettings.Values["Status"].ToString() == "true")
                     {
                         if (!rootFrame.Navigate(typeof(MainPage), e.Arguments))
                         {
                             throw new Exception("Failed to create initial page");
                         }
                     }
                     else 
                     {
                         if (!rootFrame.Navigate(typeof(UserLogin), e.Arguments))
                         {
                             throw new Exception("Failed to create initial page");
                         }
                     }
                 }
                 else
                 {
                     if (!rootFrame.Navigate(typeof(UserLogin), e.Arguments))
                     {
                         throw new Exception("Failed to create initial page");
                     }
                 }
            }

            // 确保当前窗口处于活动状态
            Window.Current.Activate();
        }