如果用户数据保存在隔离存储中,如何跳过登录页面
本文关键字:何跳过 登录 存储 用户数 用户 数据 保存 隔离 存在 如果 | 更新日期: 2023-09-27 18:13:14
我正在开发一个windows phone 8应用程序,需要登录。
当用户第一次登录时打开应用程序,他的数据保存在隔离存储中,下次他启动应用程序时,我检查他在隔离存储中的id,并尝试导航到主页以跳过登录页面,但它不起作用。
下面是我在登录页面的代码:public MainPage()
{
IsolatedStorageSettings WasalnySettings = IsolatedStorageSettings.ApplicationSettings;
if (WasalnySettings.Contains("CurrentUserGUID"))
{
string mydata = (string)WasalnySettings["CurrentUserGUID"];
NavigationService.Navigate(new Uri("/Home.xaml", UriKind.Relative));
}
InitializeComponent();
}
我认为问题是主页还没有加载,因为调用是在构造函数中,所以它还没有加载。尝试处理Loaded
事件并将Navigate
调用放在那里:
public MainPage()
{
InitializeComponent();
// Assign the handler:
MainPage.Loaded += CheckLogin;
}
void CheckLogin(object sender, EventArgs e)
{
// at this point, the page has been fully loaded:
IsolatedStorageSettings WasalnySettings = IsolatedStorageSettings.ApplicationSettings;
if (WasalnySettings.Contains("CurrentUserGUID"))
{
string mydata = (string)WasalnySettings["CurrentUserGUID"];
NavigationService.Navigate(new Uri("/Home.xaml", UriKind.Relative));
}
}
在这里找到:NavigationService中的对象引用错误。在
实际上,当我在"onNavigatedTo"事件处理程序中编写导航行
时,它工作了protected override void OnNavigatedTo(NavigationEventArgs e)
{
// at this point, the page has been fully loaded:
IsolatedStorageSettings WasalnySettings = IsolatedStorageSettings.ApplicationSettings;
if (WasalnySettings.Contains("CurrentUserGUID"))
{
string mydata = (string)WasalnySettings["CurrentUserGUID"];
NavigationService.Navigate(new Uri("/Home.xaml", UriKind.Relative));
}
}