Ограничить количество строк в ListView / GridView - PullRequest
0 голосов
/ 30 августа 2018

У меня есть 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 (см. Ниже), но это просто не работает для меня («ItemsPanel не найден в GridView»).

Является ли мое единственное решение для поддержки базового CollectionView?

<GridView.ItemsPanel>
   <ItemsPanelTemplate>
       <ItemsWrapGrid MaximumRowsOrColumns="5"/>
   </ItemsPanelTemplate>
</GridView.ItemsPanel>

Ответы [ 2 ]

0 голосов
/ 31 августа 2018

Является ли мое единственное решение для поддержки базового CollectionView?

Да. Сам элемент управления не может ограничивать количество элементов.

Вы должны контролировать это самостоятельно, не добавляя слишком много элементов в исходную коллекцию (UsersView в данном случае).

Невозможно ограничить максимальное количество элементов в XAML.

0 голосов
/ 30 августа 2018

Вы можете просто отфильтровать UsersView и использовать метод Take, чтобы получить количество элементов, которые вы хотите показать.

UsersView.Take(5);

Если вам не нужно все UsersView в других местах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...