我正在构建一个需要垂直列表水平列表的应用程序
简化的XAML布局:
<ScrollViewer>
<ItemsControl ItemsSource="{Binding Lists}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<ListView ItemsSource="{Binding Items}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ScrollViewer>
我无法正确接触互动。当前水平滑动水平移动整个列表,垂直移动单个列表的项目。但是,可以使用对角线滑动移动两个列表,并且不可能一次滚动多个垂直列表(它没有外部滚动查看器)。
有没有办法让所有水平滑动仅适用于外部滚动查看器,而所有垂直滑动仅适用于内部列表视图?
答案 0 :(得分:1)
如果您在两个ScrollViewers上设置IsHorizontalRailEnabled
/ IsVerticalRailEnabled
属性,则可能会获得所需的效果。
您还可以在ScrollViewer.IsHorizontalRailEnabled
或[{1}}上GridView
设置ScrollViewer.IsVerticalRailEnabled
之类的内容,而无需提取模板即可访问其ListView