当用户第一次使用Windows应用程序时,必须打开特定页面

时间:2013-10-30 00:06:46

标签: windows-phone-7

我正在开发一个Windows 7手机应用程序,当用户第一次在手机中使用该应用程序时,我想要显示一个特定页面(用户需要接受的隐私政策)。任何人都可以告诉我如何完成这项工作。

2 个答案:

答案 0 :(得分:0)

可以找到这个问题的可能答案here。如果您希望页面只打开一次,我建议IsolatedStorageSettings如果用户已接受该策略,则保存布尔值。

答案 1 :(得分:0)

此功能可采用两种方法。第一种是始终从隐私策略页面开始,但是覆盖OnNavigatedTo方法以检查策略是否已被接受。如果有,请导航到“MainPage”。在Mainpage中,删除所有backstack条目。

隐私政策页面

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    // have the accepted the policy?
    var settings = IsolatedStorageSettings.ApplicationSettings;
    bool accepted;
    if(settings.TryGetValue("PolicyAccepted", out accepted))
    {
        if (accepted)
        {
            NavigationService.Navigate(new Uri("MainPage.xaml", UriKind.Relative));
        }
    }
}

private void OnAcceptButtonClick(object sender, RoutedEventArgs routedEventArgs)
{
    var settings = IsolatedStorageSettings.ApplicationSettings;
    settings["PolicyAccepted"] = true;
    settings.Save();
    NavigationService.Navigate(new Uri("MainPage.xaml", UriKind.Relative));
}

然后在您的MainPage中删除backstack

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    while (NavigationService.CanGoBack) NavigationService.RemoveBackEntry();
}

第二种方法是使用此SO answer中描述的UriMapper。