C# 如何在windows phone 8中使用对象导航?
我需要使用对象而不是字符串从一个xaml页面导航到另一个 目前的代码是:C# 如何在windows phone 8中使用对象导航?,c#,windows-phone-7,windows-phone-8,C#,Windows Phone 7,Windows Phone 8,我需要使用对象而不是字符串从一个xaml页面导航到另一个 目前的代码是: private void Border_ManipulationStarted(object sender, System.Windows.Input.ManipulationStartedEventArgs e) { string uri = "/PhonePageOne.xaml?Text="; uri += txtBox.Text; NavigationService.Navi
private void Border_ManipulationStarted(object sender, System.Windows.Input.ManipulationStartedEventArgs e)
{
string uri = "/PhonePageOne.xaml?Text=";
uri += txtBox.Text;
NavigationService.Navigate(new Uri(uri, UriKind.Relative));
}
我不想在url中传递文本,我需要传递一个对象,而不是像下面那样,有什么方法可以做到这一点
Person p = new person();
uri+=p
在第一页中,执行以下操作:
PhoneApplicationService.Current.State["param"] = p;
NavigationService.Navigate(new Uri("/PhonePageOne.xaml", UriKind.Relative));
在第二步中,检索参数:
Person p = PhoneApplicationService.Current.State["param"] as Person;
PhoneApplicationService.State
字典是一个临时存储位置,它会一直保存到你的应用被停用为止
其他选项可以是在例如App.xaml.cs中声明静态成员,并使用它从一个页面保存对象,从第二个页面检索对象。在第一个页面中执行以下操作:
PhoneApplicationService.Current.State["param"] = p;
NavigationService.Navigate(new Uri("/PhonePageOne.xaml", UriKind.Relative));
在第二步中,检索参数:
Person p = PhoneApplicationService.Current.State["param"] as Person;
PhoneApplicationService.State
字典是一个临时存储位置,它会一直保存到你的应用被停用为止
其他选项可以是在例如App.xaml.cs中声明静态成员,并使用它从一个页面保存对象,从第二个页面检索对象。您可以使用Messenger-->MVVM Light
它是MVVM的高级用途。
在视图模型中声明messenger/注册messenger/发送所需内容:)
您可以使用Messenger-->MVVM灯
它是MVVM的高级用途。
在视图模型中声明messenger/注册messenger/发送所需内容:)
虽然电话应用程序状态方法可能有效,但当您从休眠状态返回时,它会引发异常。它不是用来存储大型对象的。更好的方法是重写navigationservice类的导航函数。以下是一个链接,可帮助您浏览:-
虽然电话应用程序状态方法可能有效,但当您从休眠状态返回时,它会引发异常。它不是用来存储大型对象的。更好的方法是重写navigationservice类的导航函数。以下是一个链接,可帮助您浏览:-