如何在 UWP 上创建自定义 ListView

How to create a custom ListView on UWP

我已经在 C# 上设置了我的 ListView,问题是 XAML。我当前的代码是这样工作的:

<ListView x:Name="List" ItemsSource="{Binding}" SelectionChanged="List_SelectionChanged">
    <ListView.ItemTemplate>
        <DataTemplate>
            <Grid Margin="11" Width="460">
                <StackPanel Orientation="Vertical" >
                    <Image Width="100" Height="100"
                       Source="{Binding Way}"/>
                </StackPanel>
            </Grid>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

但我想做这样的事情:

对于您的场景,我认为您可以使用 GridView 而不是 ListViewGridView 按行和列显示数据集合,而 ListView 显示垂直堆叠的集合。

默认情况下,GridView 使用 ItemsWrapGrid as its ItemsPanel, while using ItemsWrapGrid, we can set the ItemsWrapGrid.MaximumRowsOrColumns property with ItemsWrapGrid.Orientation 属性 将最大列限制为 2

例如:

<GridView ItemsSource="{Binding}" SelectionChanged="GridView_SelectionChanged">
    <GridView.ItemTemplate>
        <DataTemplate>
            <Grid Width="460" Margin="11">
                <StackPanel Orientation="Vertical">
                    <Image Width="100" Height="100" Source="{Binding Way}" />
                </StackPanel>
            </Grid>
        </DataTemplate>
    </GridView.ItemTemplate>
    <GridView.ItemsPanel>
        <ItemsPanelTemplate>
            <ItemsWrapGrid MaximumRowsOrColumns="2" Orientation="Horizontal" />
        </ItemsPanelTemplate>
    </GridView.ItemsPanel>
</GridView>