Пример #1
0
        /// <summary>
        /// アプリケーションがエンド ユーザーによって正常に起動されたときに呼び出されます。他のエントリ ポイントは、
        /// アプリケーションが特定のファイルを開くために起動されたときなどに使用されます。
        /// </summary>
        /// <param name="e">起動の要求とプロセスの詳細を表示します。</param>
        protected override void OnLaunched(LaunchActivatedEventArgs e)
        {
            Frame?rootFrame = Window.Current?.Content as Frame;

            // ウィンドウに既にコンテンツが表示されている場合は、アプリケーションの初期化を繰り返さずに、
            // ウィンドウがアクティブであることだけを確認してください
            if (rootFrame == null)
            {
                // ナビゲーション コンテキストとして動作するフレームを作成し、最初のページに移動します
                rootFrame = new _Frame();

                rootFrame.NavigationFailed += OnNavigationFailed;

                if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
                {
                    //TODO: 以前中断したアプリケーションから状態を読み込みます
                }

                // フレームを現在のウィンドウに配置します
                if (Window.Current != null)
                {
                    Window.Current.Content = rootFrame;
                }
                ExtendAcrylicIntoTitleBar();
            }

            if (e.PrelaunchActivated == false)
            {
                if (rootFrame.Content == null)
                {
                    // ナビゲーションの履歴スタックが復元されていない場合、最初のページに移動します。
                    // このとき、必要な情報をナビゲーション パラメーターとして渡して、新しいページを
                    // 作成します
                    rootFrame.Navigate(typeof(MainPage), e.Arguments);
                }
                // 現在のウィンドウがアクティブであることを確認します
                Window.Current?.Activate();
            }
        }
Пример #2
0
        protected override void OnActivated(IActivatedEventArgs args)
        {
            if (args.Kind == ActivationKind.Protocol &&
                args is ProtocolActivatedEventArgs protocol)
            {
                Frame?rootFrame = Window.Current?.Content as Frame;
                // ウィンドウに既にコンテンツが表示されている場合は、アプリケーションの初期化を繰り返さずに、
                // ウィンドウがアクティブであることだけを確認してください
                if (rootFrame == null)
                {
                    // ナビゲーション コンテキストとして動作するフレームを作成し、最初のページに移動します
                    rootFrame = new _Frame();

                    rootFrame.NavigationFailed += OnNavigationFailed;

                    // フレームを現在のウィンドウに配置します
                    if (Window.Current != null)
                    {
                        Window.Current.Content = rootFrame;
                    }
                    ExtendAcrylicIntoTitleBar();
                }

                if (rootFrame.Content == null)
                {
                    // ナビゲーションの履歴スタックが復元されていない場合、最初のページに移動します。
                    // このとき、必要な情報をナビゲーション パラメーターとして渡して、新しいページを
                    // 作成します
                    rootFrame.Navigate(typeof(MainPage), args);
                }
                // 現在のウィンドウがアクティブであることを確認します
                Window.Current?.Activate();
            }
            else
            {
                base.OnActivated(args);
            }
        }