Evo*_*lor 10 c# navigation save windows-phone-8.1
我有一个完全相同的问题,如从页面到页面传递数据,但仅适用于Windows Phone 8.1(与Windows Phone 7相对).这是一个问题:
我正在寻找有关如何从页面传递数据的最佳实践.
在页面AI中有一个触发页面B的按钮.在页面BI上有6个文本框,允许用户输入信息.用户完成后,单击按钮将其返回到页面A.
我想将这些数据传回页面A.
我见过建议:
构建XML文档并保存到独立存储使用App类在属性中存储信息传递它像查询字符串我正在寻找最佳实践.Microsoft建议使用一个或者通常被认为是最好的方法吗?
谢谢
Rom*_*asz 16
在WP8.1运行时 - 对于Silverlight,WP8.0中使用的方法仍然可以工作 - 你有几个choces:
第一种也许是最简单的方法是使用Navigate with parameter - 如果它是可序列化的类型,则不必将其转换为字符串:
// let's assume that you have a simple class:
public class PassedData
{
public string Name { get; set; }
public int Value { get; set; }
}
// then you navigate like this:
Frame.Navigate(typeof(Page1), new PassedData { Name = "my name", Value = 10 });
// and in target Page you retrive the information:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
PassedData data = e.Parameter as PassedData;
}
Run Code Online (Sandbox Code Playgroud)您可以使用一些静态对象沿App传递数据
请注意,您还必须处理应用程序暂停/恢复 - 因此适合在应用程序暂停时保存数据并在恢复时加载.您应该记住,应用程序恢复时不会调用OnNavigatedTo.
以上是关于正常导航(前进).如果您想填充上一页中的某些数据,那么您有几个选择:
请注意,前两种方法的缺点是应用程序在挂起后可能会崩溃.保存到文件可能会更好,思想需要更多的工作和正确的处理.
| 归档时间: |
|
| 查看次数: |
13009 次 |
| 最近记录: |