Select ListView GroupStyle 项目
Select ListView GroupStyle Items
我在 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;
}
现在我的问题是,尽管知道选定的 Key,但我无法从中访问 Items。在 Debug 中,我可以看到 Count 属性 它等于组内元素的数量,但我不知道如何遍历它.
我非常想遍历所有项目,它们与 selKey 具有相同的键并设置一个名为 _isVisible[ 的布尔值 属性 =38=] 对于所有这些项目。 good/fast/effective 实现此目的的方法是什么?
GroupInfoList
派生自 List<object>
。它包含具有相同 Key
的所有 Contact
。当你得到 selItem
时,你可以使用下面的代码来遍历它,就像遍历 List
.
foreach (var item in selItem)
{
var contact = item as Contact;
//suppose you have add a _isVisible property in Contact
contact._isVisible = true;
}
我在 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;
}
现在我的问题是,尽管知道选定的 Key,但我无法从中访问 Items。在 Debug 中,我可以看到 Count 属性 它等于组内元素的数量,但我不知道如何遍历它.
我非常想遍历所有项目,它们与 selKey 具有相同的键并设置一个名为 _isVisible[ 的布尔值 属性 =38=] 对于所有这些项目。 good/fast/effective 实现此目的的方法是什么?
GroupInfoList
派生自 List<object>
。它包含具有相同 Key
的所有 Contact
。当你得到 selItem
时,你可以使用下面的代码来遍历它,就像遍历 List
.
foreach (var item in selItem)
{
var contact = item as Contact;
//suppose you have add a _isVisible property in Contact
contact._isVisible = true;
}