首页 > 解决方案 > 如何通过 UWP 中的页面传递列表

问题描述

我目前在 UWP 应用程序中工作。我有一个ListView复选框。我想将列表的每个元素(假设已选中)传递到另一个页面。这是我迄今为止尝试过的:

主页:

ArrayList selected = new ArrayList();
private void chk_Checked(object sender, RoutedEventArgs e)
{
    CheckBox checkbox = (CheckBox)sender;
    string item = checkbox.DataContext.ToString();
    selected.Add(item);

    Frame.Navigate(typeof(BlankPage1), selected);

}

第二页:

ArrayList s = new ArrayList();

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    base.OnNavigatedTo(e);
    s = e.selected;
}

标签: c#.netuwpuwp-xaml

解决方案


您传递参数的方式是正确的,但是在使用参数时,您可以这样做。

ArrayList s = new ArrayList();

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    s = e.Parameter as ArrayList;
    if(s != null)
    {
        //to do
    }
    base.OnNavigatedTo(e);
}

有关更多信息,请参阅文档


推荐阅读