我想在UWP-XAML中实现Adaptive Horizo​​ntal ListView

时间:2018-01-31 16:00:17

标签: listview uwp

我想在UWP-XAML中实现自适应水平ListView,如下图所示。 目前我不知道该怎么做。

enter image description here

1 个答案:

答案 0 :(得分:1)

鉴于图片中的内容需要大量照片,您最好使用GridView。但是你的问题的答案对GridView和ListView都有效,所以它无关紧要。

要使ListView项目水平堆叠,您可以调整ItemsWrapGrid的方向,如下所示:

<ListView>
    <ListView.ItemsPanel>
        <ItemsPanelTemplate>
            <ItemsWrapGrid MaximumRowsOrColumns="1" Orientation="Vertical"/>
        </ItemsPanelTemplate>
    </ListView.ItemsPanel>
</ListView>

这将为您提供一行的水平方向ListView。 要获取水平滚动条,请更改ListView的ScrollViewer的属性:

<ListView ScrollViewer.HorizontalScrollBarVisibility="Visible"
          ScrollViewer.HorizontalScrollMode="Enabled" 
          ScrollViewer.VerticalScrollMode="Disabled">
    <ListView.ItemsPanel>
        <ItemsPanelTemplate>
            <ItemsWrapGrid MaximumRowsOrColumns="1" Orientation="Vertical"/>
        </ItemsPanelTemplate>
    </ListView.ItemsPanel>
</ListView>

通过禁用垂直滚动,我们允许鼠标水平滚动而不是垂直滚动。如果你想使用GridView,上面的工作也会很完美。只需将ListView标记更改为GridView标记即可。 This stackoverflow question有一个使用GridView的好例子。