限制ListView / GridView中的行数

问题描述 投票:-2回答:2

我有一个ListView,其中GridView用作View,类似于此处的示例:

<Grid>
    <ListView Margin="10" Name="lvUsers" ItemsSource="{Binding UsersView}">
        <ListView.View>
            <GridView>
                <GridViewColumn Header="Name" Width="120" DisplayMemberBinding="{Binding Name}" />
                <GridViewColumn Header="Age" Width="50" DisplayMemberBinding="{Binding Age}" />                 
            </GridView>
        </ListView.View>
    </ListView>
</Grid>

如何限制显示的最大行数?

我已经看到其他示例引用了GridView.ItemsPanel(见下文),但这对我来说根本不起作用(“在GridView中找不到ItemsPanel”)。

我唯一的解决方案是维护底层的CollectionView吗?

<GridView.ItemsPanel>
   <ItemsPanelTemplate>
       <ItemsWrapGrid MaximumRowsOrColumns="5"/>
   </ItemsPanelTemplate>
</GridView.ItemsPanel>
wpf xaml listview gridview rows
2个回答
0
投票

是我维持基础CollectionView的唯一解决方案吗?

是。控件本身无法限制项目数量。

你应该自己控制它,不要在源集合中添加太多项目(在本例中为UsersView)。

无法限制XAML中的最大项目数。


-1
投票

你可以过滤你的UsersView并使用Take方法来获得你想要显示的项目数量。

UsersView.Take(5);

除非你在其他地方需要整个UsersView

© www.soinside.com 2019 - 2024. All rights reserved.