选择ListView GroupStyle项

时间:2015-12-06 08:48:47

标签: c# listview uwp groupstyle

我在UWP中有 ListView GroupStyle ,如示例here中所示。我有以下 HeaderTemplate

<GroupStyle.HeaderTemplate>
  <DataTemplate x:DataType="data:GroupInfoList">
    <Grid Tapped="Header_Tapped">
        <TextBlock Text="{x:Bind Key}" />
    </Grid>
  </DataTemplate>
</GroupStyle.HeaderTemplate>

我可以通过

获取所选的
private void Header_Tapped(object sender, Windows.UI.Xaml.Input.TappedRoutedEventArgs e)
{
  var selItem = (sender as Grid).DataContext as GroupInfoList;
  var selKey = selItem.Key;
}

现在我的问题是,尽管知道所选的密钥,但我无法从中访问 Items 。在Debug中,我可以看到 Count 属性,它等于组内部的元素数量,但我不知道,如何迭代它。

我非常希望遍历所有与 selKey 具有相同键的项目,并为所有这些项目设置一个名为 _isVisible 的布尔属性。什么是实现这一目标的好/快/有效方法?

1 个答案:

答案 0 :(得分:1)

GroupInfoList源自List<object>。它包含具有相同Contact的所有Key。获得selItem后,您可以使用以下代码来迭代遍历List

foreach (var item in selItem)
{
    var contact = item as Contact;
    //suppose you have add a _isVisible property in Contact
    contact._isVisible = true;
}