Esempio n. 1
0
        /// <summary>
        /// Called when the CoreWindow is created or re-created.
        /// </summary>
        /// <param name="coreWindow"></param>
        public void SetWindow(CoreWindow coreWindow)
        {
            // Use SetWindow to create your main window and connect any window specific events.
            Debug.LogMessage("App.SetWindow");
            this.CoreWindow = coreWindow;

            // window visibility and size-change events
            this.CoreWindow.SizeChanged       += new TypedEventHandler <CoreWindow, WindowSizeChangedEventArgs>(WindowSizeChanged);
            this.CoreWindow.VisibilityChanged += new TypedEventHandler <CoreWindow, VisibilityChangedEventArgs>(VisibilityChanged);
            this.CoreWindow.Closed            += new TypedEventHandler <CoreWindow, CoreWindowEventArgs>(WindowClosed);

            // display events
            DisplayInformation currentDisplayInformation = DisplayInformation.GetForCurrentView();

            currentDisplayInformation.DpiChanged          += new TypedEventHandler <DisplayInformation, object>(DpiChanged);
            currentDisplayInformation.OrientationChanged  += new TypedEventHandler <DisplayInformation, object>(OrientationChanged);
            DisplayInformation.DisplayContentsInvalidated += new TypedEventHandler <DisplayInformation, object>(DisplayContentsInvalidated);

            // disable all pointer visual feedback for better performance when touching.
            var pointerVisualizationSettings = PointerVisualizationSettings.GetForCurrentView();

            pointerVisualizationSettings.IsContactFeedbackEnabled      = false;
            pointerVisualizationSettings.IsBarrelButtonFeedbackEnabled = false;

            // ======================================================
            // Set initial window size & fullscreen
            // ======================================================
            ApplicationView.PreferredLaunchViewSize      = new Size(1600, 900);
            ApplicationView.PreferredLaunchWindowingMode = ApplicationViewWindowingMode.PreferredLaunchViewSize;
            ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size(100, 100));

            // ======================================================
            // create any window dependent classes
            // ======================================================
            workManager.AttachWindow(CoreWindow);
            input = new Input(this, workManager);
        }
Esempio n. 2
0
        /// <summary>
        /// Invoked when the application is launched normally by the end user.  Other entry points
        /// will be used such as when the application is launched to open a specific file.
        /// </summary>
        /// <param name="e">Details about the launch request and process.</param>
        protected override void OnLaunched(LaunchActivatedEventArgs e)
        {
            if (e.PreviousExecutionState != ApplicationExecutionState.ClosedByUser &&
                e.PreviousExecutionState != ApplicationExecutionState.NotRunning &&
                e.PreviousExecutionState != ApplicationExecutionState.Terminated)
            {
                return;
            }

            //if (PlatformProperties.AlwaysFullscreen)
            //{
            //    bool test = ApplicationView.GetForCurrentView().TryEnterFullScreenMode();

            //}

            this.originalAccentColor = (Color)Resources["SystemAccentColor"];
            this.UpdateApplicationColor();

            // deactivate pointer trail for performance reasons
            PointerVisualizationSettings pointerSetting = PointerVisualizationSettings.GetForCurrentView();

            pointerSetting.IsBarrelButtonFeedbackEnabled = pointerSetting.IsContactFeedbackEnabled = false;

            //Window.Current.Content = this.mainPage = new MainPage();
            //this.Initialize();
            //this.mainPage.InitializeMainPage();

            Frame rootFrame = Window.Current.Content as Frame;

            // Do not repeat app initialization when the Window already has content,
            // just ensure that the window is active
            if (rootFrame == null)
            {
                // Create a Frame to act as the navigation context and navigate to the first page
                rootFrame = new Frame();

                rootFrame.NavigationFailed += OnNavigationFailed;

                if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
                {
                    //TODO: Load state from previously suspended application
                }

                // Place the frame in the current Window
                Window.Current.Content = rootFrame;
            }

            if (rootFrame.Content == null)
            {
                // When the navigation stack isn't restored navigate to the first page,
                // configuring the new page by passing required information as a navigation
                // parameter
                rootFrame.Navigate(typeof(MainPage), e.Arguments);

                this.mainPage = rootFrame.Content as MainPage;

                this.MainPageCreated(this.mainPage);
            }

            this.Initialize();
            this.mainPage.InitializeMainPage();

            // Ensure the current window is active
            Window.Current.Activate();
        }