您的位置:首页 > 其它

WinPhone 开发(4)-----快速恢复应用程序上一次的会话状态

2012-03-01 19:58 429 查看
  通过 App.xaml.cs 代码后置文件中的事件处理程序通知应用程序,保存应用程序的当前状态。通过 IsolatedStorageSettings 的独立存储特殊功能提供便捷的方法来保存名称/值对信息,而不必创建和访问文本文件。在用户重新启动应用程序之后,即可检索状态信息,并恢复应用程序在上一次会话中的状态。

  将下面的两个方法写到App.xaml.cs中,然后在Application_Launching、Application_Activated事件中调用LoadState方法,在Application_Deactivated、Application_Closing事件事件中调用SaveState方法。
  其中“myValue”就是要保存的键,当然还要在XAML的后台代码中保存键相对应的值。例如 phoneAppService.State["myValue"] = "key";

private void SaveState()
{
PhoneApplicationService phoneAppService = PhoneApplicationService.Current;
IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings;
5
settings["myValue"] = phoneAppService.State["myValue"];
}
8
private void LoadState()
{
PhoneApplicationService phoneAppService = PhoneApplicationService.Current;
IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings;
13
string content="";
if(settings.TryGetValue<string>("myValue",out content))
{
phoneAppService.State["myValue"] = content;
}
}


  
  最后在需要的时候再取出来用即可。例如 在XAMl 页面加载时获得myValue的值。

private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
{
Object myValue;
if(phoneAppService.State.ContainsKey("myValue"))
{
if(phoneAppService.State.TryGetValue("myValue",out myValue))
{
myTextBox.Text=myValue.ToString();
}
}
}



一步一脚印

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: