Exemple #1
0
        public override async Task <ShellRouteState> NavigatingToAsync(ShellNavigationArgs args)
        {
            #region tombstone
            //if (navigationStack.Count == 0)
            //{
            //    navigationStack = LoadState();

            //    if(navigationStack.Count > 0)
            //        return await ParseAsync(new ShellUriParserArgs(args.Shell, navigationStack.Last()));
            //}


            //if (args.FutureState.CurrentRoute.FullUri != navigationStack.LastOrDefault())
            //{
            //    navigationStack.Add(args.FutureState.CurrentRoute.FullUri);
            //    SaveState();
            //}
            #endregion

            #region animation
            //var page = args.Shell.RouteState.GetCurrentPage();

            //if (page != null)
            //{
            //    await page.ScaleTo(0, 500);
            //}
            #endregion

            return(await base.NavigatingToAsync(args));
        }
Exemple #2
0
        public override async Task <ShellRouteState> NavigatingToAsync(ShellNavigationArgs args)
        {
            var pathPart = args.FutureState.CurrentRoute.GetCurrent();

            if (pathPart.ShellPart is ShellContent shellContent)
            {
                var page = CreatePageFromSegment(shellContent.Route);
                shellContent.Content = page;
                await PageUtilities.OnInitializedAsync(page,
                                                       _currentParameters
                                                       );
            }

            return(args.FutureState);
        }