Exemplo n.º 1
0
            public async Task WhenNavigatingForward_PageNavigatedEventHasCorrectTo()
            {
                PageNavigatedEventArgs <TestViewModel> args = null;

                target.PageNavigated += (s, e) => args = e;
                var first = new TestViewModel();

                await target.NavigateAsync(first, waitFor : false, ct : CancellationToken.None);

                Assert.That(args.To, Is.SameAs(first));
            }
Exemplo n.º 2
0
            public async Task <NavigationDirection> WhenNavigatingBack_PageNavigatedEventHasCorrectDirection(bool isManual)
            {
                await target.NavigateAsync(new TestViewModel(), waitFor : false, ct : CancellationToken.None);

                await target.NavigateAsync(new TestViewModel(), waitFor : false, ct : CancellationToken.None);

                PageNavigatedEventArgs <TestViewModel> args = null;

                target.PageNavigated += (s, e) => args = e;
                await target.GoBackAsync(isManual);

                return(args.Direction);
            }
Exemplo n.º 3
0
            public async Task WhenNavigatingBack_PageNavigatedEventHasCorrectTo(bool isManual)
            {
                var first = new TestViewModel();
                await target.NavigateAsync(first, waitFor : false, ct : CancellationToken.None);

                await target.NavigateAsync(new TestViewModel(), waitFor : false, ct : CancellationToken.None);

                PageNavigatedEventArgs <TestViewModel> args = null;

                target.PageNavigated += (s, e) => args = e;

                await target.GoBackAsync(isManual);

                Assert.That(args.To, Is.SameAs(first));
            }
Exemplo n.º 4
0
        void ViewModel_PageNavigated(object sender, PageNavigatedEventArgs <PageViewModel> e)
        {
            switch (e.Direction)
            {
            case NavigationDirection.Forward:
                UpdateViewController(e.To);
                break;

            case NavigationDirection.ManualBack:
                isManualBack = true;
                try
                {
                    PopViewController(animated: true);
                }
                finally
                {
                    isManualBack = false;
                }
                break;
            }
            Console.WriteLine($"NavigationController stack depth after navigation {ViewControllers.Length}");
        }
Exemplo n.º 5
0
 void NavigationService_PageNavigated(object sender, PageNavigatedEventArgs <PageViewModel> e)
 {
     UpdateFragment(isBack: e.Direction.IsBack(), isAnimated: true);
 }
 private void NavigationService_PageNavigated(object sender, PageNavigatedEventArgs <PageViewModel> e)
 {
     CurrentPage = e.To;
 }