UWP:在没有输入的情况下有条件地从 OnNaviagted 导航到另一个页面

UWP: Conditionally Navigating from OnNaviagted to another page without input

当应用程序运行时,我想检查一个条件来确定页面导航到的位置。没有来自用户的任何输入,因此没有对象发送者。我怎样才能做到这一点?

protected override async void OnNavigatedTo(NavigationEventArgs e)
    {
        var Albums = await App.DataModel.GetAlbum();

        if (Albums != null)
        {
            Frame.Navigate(typeof(ViewModel.AlbumView));
        }
        else
        {
        Frame.Navigate(typeof(ViewModel.AddAlbumView));
        }
    }

在 App.Xaml.cs OnAppLaunchedEvent

中有一行
rootframe.Navigate(typeof(MainPage));

用你的条件替换这个

    var Albums = await App.DataModel.GetAlbum();

    if (Albums != null)
    {
        Frame.Navigate(typeof(ViewModel.AlbumView));
    }
    else
    {
    Frame.Navigate(typeof(ViewModel.AddAlbumView));
    }

并且不要忘记将您的相册和视图模型引入应用程序。 作为一个好的做法,使 viewModel 静态并将其引用到 其他需要它的页面。这确保你正在关注 SingleTon 模式并且您不会同时拥有您的 Viewmodel 的多个副本。