在wp8中将对象从一个页面传递到另一个页面

时间:2014-12-08 07:28:01

标签: c# windows-phone-8

如果我必须在wp8中将一个对象从一个页面传递到另一个页面。应该怎么做? 至于传递字符串或int值,我们使用querystring.Can我们也做同样的传递对象: -

Vehicle vm = item as Vehicle; NavigationService.Navigate(new Uri("/Page2.xaml?values=" + vm, UriKind.Relative));

在另一个班级: -

var values1=""; if (NavigationContext.QueryString.TryGetValue("values", out values1)) { //do something with the parameter }

1 个答案:

答案 0 :(得分:0)

要传递非字符串数据,您可以执行以下操作,

 public static void Navigate(this NavigationService navigationService, Uri source, object data)
    {
        Data = data;
        navigationService.Navigate(source);
    }

以下是NavigationService的扩展方法:

public static class Extensions
    {
        private static object Data;


        public static void Navigate(this NavigationService navigationService, Uri source, object data)
        {
            Data = data;
            navigationService.Navigate(source);
        }

        public static object GetNavigationData(this NavigationService service)
        {
            return Data;
        }
    }

您可以点这个链接:

How to pass a complex object to a page