我从一个页面导航到另一个页面。我知道如何在这些页面之间传输一些数据:
"致电Page":
NavigationService.Navigate(new Uri("/Views/ViewerPage.xaml?image=" + mImageID, UriKind.Relative));
"被称为Page":
NavigationContext.QueryString.TryGetValue("image", out mImageURL)
但是如何传输更复杂的数据呢?
List<tring> mList = new List<string>;
mList.Add("test-1");
mList.Add("test-2");
我想现在转移完整列表`mList&#39;到被调用的页面。 任何不确定如何处理这个?
答案 0 :(得分:4)
在第一页中执行以下操作:
PhoneApplicationService.Current.State["param"] = mList;
NavigationService.Navigate(new Uri("/PhonePageOne.xaml", UriKind.Relative));
在第二个检索参数:
List<string> p = PhoneApplicationService.Current.State["param"] as List<string>;
PhoneApplicationService.State字典是一个临时存储位置,在您的应用停用之前一直存在。
其他选项可以是在例如App.xaml.cs中声明一个静态成员,并使用它来保存从一个页面到第二个页面的thoe对象。