我正在尝试从一个页面导航到另一个页面,这取决于登录。
如果用户已经登录,则应打开欢迎页面。否则应打开登录页面。
我正在这样做。启动页面是启动页面。
这是一个启动屏幕Xaml.cs:
namespace NewExample.Views
{
public partial class SplashPage : PhoneApplicationPage
{
public SplashPage()
{
InitializeComponent();
this.DataContext = new SplashPageViewModel();
}
}
}
这是Splash屏幕视图模型:这里我检查用户是否已登录。
namespace NewExample.ViewModel
{
public class SplashPageViewModel
{
public static bool isLogin = false;
public SplashPageViewModel()
{
var rootFrame = (App.Current as App).RootFrame;
if (isLogin)
rootFrame.Navigate(new Uri("/Views/WelcomePage.xaml", UriKind.Relative));
else
rootFrame.Navigate(new Uri("/Views/LoginPage.xaml", UriKind.Relative));
}
}
}
但它不起作用。仅显示启动页面。这不是导航到另一页。请帮我解决这个问题。
如果我在SplashPageXaml.cs中编写代码,它就可以工作了。
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
var rootFrame = (App.Current as App).RootFrame;
if (isLogin)
rootFrame.Navigate(new Uri("/Views/WelcomePage.xaml", UriKind.Relative));
else
rootFrame.Navigate(new Uri("/Views/LoginPage.xaml", UriKind.Relative));
}
但我想在
ViewModel
.