在UWP中,我需要从列表视图中获取当前组的信息。
我的群组定义为:
<CollectionViewSource x:Name="GroupsList" IsSourceGrouped="True"/>
<ListView x:Name="LvPeople" ItemsSource="{x:Bind GroupsList.View}"/>
保存当前可见组信息的属性是什么?
答案 0 :(得分:0)
根据你的截图,我认为你真正想要的是获得第一个可见的组头信息。 AFAIK,目前没有属性可以直接获取当前第一个可见的标题。如果您确实需要此功能,则可能需要使用VisualTreeHelper
获取组头内的元素并尝试计算它是否可见,但可能不建议这样做。 Here是一个类似的线程,你可以参考。以下方法可以帮助您判断它是否可见。
private bool IsVisibileToUser(FrameworkElement element, FrameworkElement container)
{
if (element == null || container == null)
return false;
if (element.Visibility != Visibility.Visible)
return false;
Rect elementBounds = element.TransformToVisual(container).TransformBounds(new Rect(0.0, 0.0, element.ActualWidth, element.ActualHeight));
Rect containerBounds = new Rect(0.0, 0.0, container.ActualWidth, container.ActualHeight);
return (elementBounds.Top <= element.ActualHeight && elementBounds.Bottom > containerBounds.Top);
}
如需完整样本,请参阅this。