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)); }
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); }