Windows phone 8 将集合对象从一个页面传递到另一个页面

Windows phone 8 将集合对象从一个页面传递到另一个页面,windows-phone-8,Windows Phone 8,我有一个两个xaml页面。我试图在导航期间将字符串列表数组从一个页面传递到另一个页面。我可以轻松地传递字符串对象,但无法传递集合对象。谁能帮帮我吗。我已经编写了如下代码 第一个xaml List<string> array = //contains the array of strings NavigationService.Navigate(new Uri("/ListViewController.xaml?parameter="+array, UriKind.Relative))

我有一个两个xaml页面。我试图在导航期间将字符串列表数组从一个页面传递到另一个页面。我可以轻松地传递字符串对象,但无法传递集合对象。谁能帮帮我吗。我已经编写了如下代码

第一个xaml

List<string> array = //contains the array of strings
NavigationService.Navigate(new Uri("/ListViewController.xaml?parameter="+array, UriKind.Relative));
你可以试试这个


这项工作是为了观察收集,所以我希望能为列表工作。 您可以通过Navigate方法的参数传递集合:

    ObservableCollection<string> gifts = new ObservableCollection<string>();

    private void GoToMoreButton_Click(object sender, RoutedEventArgs e)
    {
         this.Frame.Navigate(typeof(MoreOptionPage), gifts);
    }
observetecollection=newobservetecollection();
私有void GoToRebutton_单击(对象发送者,路由目标e)
{
此.Frame.Navigate(typeof(MoreOptionPage),礼品);
}
并在目标页面中获取:

protected override void OnNavigatedTo(NavigationEventArgs e)
{
     gifts2 = e.Parameter as ObservableCollection<string>;
}
受保护的覆盖无效OnNavigatedTo(NavigationEventArgs e)
{
gifts2=e.作为可观察集合的参数;
}

您可以使用字符串联接方法来分隔数组。String.Join(“,”,array.ToArray());。注意:查询字符串限制,请参阅:在目标页中,使用分隔符拆分查询字符串参数。-var data=msg.Split(',');非常感谢您回复@Deepu。它可以工作。这可能会有帮助:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
     gifts2 = e.Parameter as ObservableCollection<string>;
}