示例#1
0
        private void OnTemplateContentPageLoaded(object sender, EventArgs e)
        {
            INavigatorPage navigatorPage = sender as INavigatorPage;

            if (navigatorPage != null)
            {
                navigatorPage.ContentLoaded -= OnTemplateContentPageLoaded;
            }

            ITemplate template = rootFrame.Content as ITemplate;

            if (template != null)
            {
                template.HideLoading();
            }
        }
示例#2
0
        private void OnTemplateContentFrameNavigated(object sender, NavigationEventArgs e)
        {
            Frame frame = (Frame)sender;

            EnsureBackButtonVisibility(frame);

            Page page = frame.Content as Page;

            if (page != null)
            {
                page.PointerPressed += OnPagePointerPressed;
                AddMainMenuButton(page);
            }

            ITemplate      template      = rootFrame.Content as ITemplate;
            INavigatorPage navigatorPage = frame.Content as INavigatorPage;

            if (navigatorPage != null && template != null)
            {
                template.ShowLoading();
                navigatorPage.ContentLoaded += OnTemplateContentPageLoaded;
            }

            if (lastParameter != null)
            {
                PageStackEntry lastEntry = template.ContentFrame.BackStack.LastOrDefault();
                if (lastEntry != null)
                {
                    template.ContentFrame.BackStack.Remove(lastEntry);
                    lastEntry = new PageStackEntry(
                        lastEntry.SourcePageType,
                        lastParameter,
                        lastEntry.NavigationTransitionInfo
                        );
                    template.ContentFrame.BackStack.Add(lastEntry);
                }
            }
        }