如何在 Windows Phone 中的页面之间导航时保留数据

本文关键字:之间 导航 数据 保留 Windows Phone | 更新日期: 2023-09-27 18:36:35

在我的应用程序中,第一页(page1)显示项目列表,当选择一个项目时,我会将名称传递给另一个页面(page2),使用该名称将从服务器获取数据。并且将显示所有数据。在详细信息中,其中一个将是类别(杂货,化妆品等),因此,如果我单击该文本框,它将被导航到另一个页面(page3),您可以在其中选择另一个类别,选择另一个类别后,其名称将再次传递回详细信息页面(Page2)。在我的第二页中,我将使用以下代码获取数据,

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
if (e.Uri.OriginalString.Contains("name"))
{
    var ItemName = NavigationContext.QueryString["id"];          
    //this is a parameter from page1 
    // do something
}
else   if (e.Uri.OriginalString.Contains("category"))
{
    var CategoryName= NavigationContext.QueryString["category"];          
    //this is a parameter from page3 
    // do something
}
}

但是当我从第 3 页返回到第 2 页时,发现我显示的所有详细信息(通过从第 1 页获取名称)都丢失了。如何保留这些数据?

如何在 Windows Phone 中的页面之间导航时保留数据

这些是在Windows Phone页面之间导航时传递数据的可能方法

  1. 使用独立存储将数据存储在 Windows Phone 7 上
  2. 在页面之间通过参数传递数据
  3. 动态生成数据网格,其中包含数据和相关链接按钮
  4. 使用XElement,XAttribute 作为数据结构

有关参考,请参见此处