首页 > 代码库 > windows phone应用程序生命周期及数据保存
windows phone应用程序生命周期及数据保存
windwos phone应用程序生命周期大家可以参考msdn上的介绍,上面介绍的很详细。http://msdn.microsoft.com/zhcn/library/windows/apps/xaml/hh464925.aspx
接下来主要介绍在应用程序挂起时数据的保存。
保存数据我们可以通过以下这三种方式。
1、通过SuspensionManager类
2、通过NavigationHelper类
3、通过微软提供的API,ApplicationData.Current.LocalSettings
注意:SuspensionManager和NavigationHelper是微软为我们封装好的两个类,右键解决方案->添加新项->基本页,添加完基本页以后vs会自动生成一个common文件夹。
1、使用SuspensionManager保持应用程序挂起时的状态
①、首先找到app.xaml.cs文件
②、在OnLaunched事件中注册SuspensionManager
//注册SuspensionManager 程序挂起时通知保存数据 SuspensionManager.RegisterFrame(rootFrame, "appFrame");
③、在事件OnSuspending保存挂起数据
await SuspensionManager.SaveAsync();
④、在OnLaunched事件中加载状态
if (e.PreviousExecutionState == ApplicationExecutionState.Terminated) { // TODO: 从之前挂起的应用程序加载状态 await SuspensionManager.RestoreAsync(); }
2、NavigationHelper类的使用要依赖于SuspensionManager,在使用NavigationHelper类之前先配置SuspensionManager,方法如上
①、应用程序挂起保存数据,在NavigationHelper_SaveState
private void NavigationHelper_SaveState(object sender, SaveStateEventArgs e) { e.PageState.Add("txt", txtName.Text); }
②、在NavigationHelper_LoadState事件中加载保存数据
private void NavigationHelper_LoadState(object sender, LoadStateEventArgs e) { if (e.PageState!=null&&e.PageState.ContainsKey("txt")) { txtName.Text = e.PageState["txt"] as string; } }
3、使用微软提供API
//保存数据 Windows.Storage.ApplicationData.Current.LocalSettings.Values["txt"] = txtName.Text;
//获取数据 string str = Windows.Storage.ApplicationData.Current.LocalSettings.Values["txt"] as string; if (str != null) { txtName.Text = str; }
windows phone应用程序生命周期及数据保存
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。