我需要根据登录用户的身份更改应用程序中的开始页面。在Silverlight 8.1版本中,我要做的就是删除清单文件和App.xaml.cs中的起始页:

private void Application_Launching(object sender, LaunchingEventArgs e)
        {
            Uri uriMain = new Uri("/PivotPage.xaml", UriKind.Relative);
            Uri uriLogin = new Uri("/MainPage.xaml", UriKind.Relative);

            var settings = IsolatedStorageSettings.ApplicationSettings;
            if (!settings.Contains("user_id"))
                {
                    RootFrame.Navigate(uriLogin);
                }
            else
            {
                RootFrame.Navigate(uriMain);
            }
        }


但是在通用版本中,我不知道该怎么办。我需要做什么才能在WP 8.1universal应用程序中达到此目的?

编辑:
找到重复的Change default startup page for windows phone 8.1 app,对不起

最佳答案

在App.xaml.cs中寻找

protected override void OnLaunched(LaunchActivatedEventArgs e)
{
    // ...

    // launch codes
    // insert here

    // Ensure the current window is active
    Window.Current.Activate();
}


我的启动代码检测到它们是否在手机上,所以我有一个起始页面
每个平台不同

#if WINDOWS_PHONE_APP
    if (!rootFrame.Navigate(typeof(PhonePage), e.Arguments))
    {
        throw new Exception("Failed to create initial page");
    }
#endif
#if WINDOWS_APP
    if (!rootFrame.Navigate(typeof(DesktopPage), e.Arguments))
    {
        throw new Exception("Failed to create initial page");
    }
#endif

关于c# - 在Windows Phone 8.1通用应用程序中设置起始页,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26755314/

10-08 22:47