Ejemplo n.º 1
0
        public async Task NavigateModalTo(IViewModelNavigationBase viewModel)
        {
            var page = _viewLocator.CreateAndBindPageFor(viewModel);

            await viewModel.BeforeFirstShown();

            await XamarinNavigator.PushModalAsync(page);
        }
Ejemplo n.º 2
0
        //Public methods
        public void PresentAsMainPage(IViewModelNavigationBase viewModel)
        {
            if (PresentationRoot.MainPage is NavigationPage navPage)
            {
                navPage.PopRequested -= NavPagePopRequested;
            }

            viewModel.BeforeFirstShown();

            var page = _viewLocator.CreateAndBindPageFor(viewModel);

            PresentationRoot.MainPage = page;

            IEnumerable <IViewModelNavigationBase> viewModelsToDismiss = FindViewModelsToDismiss(PresentationRoot.MainPage);

            foreach (var toDismiss in viewModelsToDismiss)
            {
                toDismiss.AfterDismissed();
            }
        }