如果在其他地方有答案,请道歉,我找不到任何答案.
我想这是一种常见的情况.用户第一次运行应用程序时,如果他们没有任何已保存的详细信息,我希望他们使用SignIn.xaml,否则我只想直接进入MainPage.xaml.
我通常会通过在MainPage的构造函数中粘贴一个检查来执行此操作,如果他们没有详细信息导航.我遇到的问题是
NavigationService.Navigate(new Uri("/SignIn.xaml", UriKind.Relative));
Run Code Online (Sandbox Code Playgroud)
即将出现作为空引用.我错过了什么?在WP7中有没有正确的方法来做这样的事情?
谢谢
不幸的是,WP7导航框架根本不能很好地处理"在首次运行时做某事"的情况.
我怀疑你看到的问题是你还没有NavigationService...但即使你这样做,你也会遇到问题:用户仍然可以点击"后退"按钮.你甚至无法解决这个问题,因为用户按下后应该退出应用程序......但是当用户点击后退按钮时,我没有办法在没有第一页的情况下做到这一点.
我发现的唯一解决方法是在与正常第一页相同的页面中显示"登录"视图,并有条件地显示一个或另一个.是的,它糟透了......但这是我找到的唯一有效的方法.如果你找到另一个,我会很高兴听到它:)
Peter Torr在这里很好地介绍了页面重定向.提供了两种方法,涵盖了相对优点.编辑:注意您可以重定向到登录页面,而不是使用弹出建议进行登录处理.
我还建议您熟悉他在这里的相关帖子.
这解决了堆栈处理(认证考虑)和地址方案(如登录页面).
| 归档时间: |
|
| 查看次数: |
3805 次 |
| 最近记录: |