Windows Phone 7,登录屏幕重定向和.exit的案例?

Jar*_*tte 5 c# silverlight windows-phone-7

我知道这已被讨论过,但我想提出我的情况....

  1. 我的应用程序中的起始页面是login.xaml.用户登录,用户名和密码通过我的WCF服务进行身份验证,用户名保存在独立存储中,然后用户被重定向到mainpage.xaml.

  2. 当用户启动我的应用程序,并且他们已经在隔离存储中保存了用户名时,会将其重定向到mainpage.xaml

  3. 如果用户从mainpage.xaml点击"返回"硬按钮,则会重定向到登录屏幕,登录屏幕又将其重定向回mainpage.xaml,因为他们已经保存了本地用户名.这导致我的应用程序目前无法通过认证,因为用户无法点击"返回"按钮从mainpage.xaml退出应用程序.

我的直觉是覆盖mainpage.xaml中的BackKeyPress并以某种方式退出应用程序.通过阅读其他帖子,我可以看到此方法不可用.我的第二个想法是以某种方式在app.xaml.cs页面中存储一个属性,告诉应用程序在加载登录页面并且该属性设置为true时退出,但这看起来有点像hacky ....

这里有什么想法?

使用的更新解决方案:

最终工作的是使登录页面成为mainpage.xaml中的一个枢轴项.当用户在未登录的情况下打开应用程序时,当前选定的数据透视表项将更改为登录数据透视表项.如果用户打开了应用程序并且已登录,则会选择正常的数据透视表项.

Pet*_*one 2

为此,我将登录页面和主页合并到一个页面中,并在堆栈面板中包含两个网格,并操纵网格的可见性以在匿名用户和经过身份验证的用户所需的 UI 之间切换。这使得问题消失,无需欺骗历史或摆弄标志。

有了合适的转换器和可见性属性的适当绑定,我可能可以在没有显式代码的情况下运行整个节目,但这将是聪明和聪明之间区别的一个很好的例子 - 它工作得很好,迟早我会忘记是如何实现的有效(好吧,我承认,我这样做了,但忘记了它是如何工作的)。