我的GridView有问题,在 Windows Store App 项目中。WinRT 中没有 WrapPanel,所以我使用在这里找到的自定义面板。但是当我在 GridView 中将此自定义面板用作 ItemsPanelTemplate 时,GridView 的水平滚动不再起作用。如果 ItemsPanelTemplate 是 StackPanel,则滚动正常。
自定义面板是否应该实现一个接口以获得更好的行为,例如IScrollSnapPointsInfo?我试过了,但我真的不知道它是如何工作的。
网格视图
<GridView x:Name="FullGrid" Grid.Row="1"
ItemsSource="{Binding Path=ContactSource.View}"
SelectionMode="Multiple"
IsSwipeEnabled="true"
IsItemClickEnabled="True"
Padding="116,10,40,10"
ItemTemplate="{StaticResource contactTemplate}"
SelectionChanged="SelectionChanged"
ItemClick="NavigateToContact">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<local:WrapPanel Orientation="Vertical"/>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
<GridView.GroupStyle>
<GroupStyle HeaderTemplate="{StaticResource letterTemplate}">
<GroupStyle.Panel>
<ItemsPanelTemplate>
<VariableSizedWrapGrid Orientation="Vertical" Margin="0,0,80,0"/>
</ItemsPanelTemplate>
</GroupStyle.Panel>
</GroupStyle>
</GridView.GroupStyle>
</GridView>
谢谢