如果包含比ListView本身更大的一个项目,WPF Scrollviewer将不会在ListView中显示

时间:2017-10-23 14:15:07

标签: c# wpf listview scrollviewer

我的应用程序中有问题,我有ListView与动态项目。物品可能有不同的高度。如果有一个项目且其高度大于整个ListView的高度,则ScrollViewer将不会显示。

以下示例可以简化问题:

<Window x:Class="WpfApplication15.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow"
        Width="300"
        Height="200">
    <ListView Height="100" Margin="10">
        <ListViewItem Height="150" Background="LimeGreen">
            <TextBlock Text="ITEM" />
        </ListViewItem>
    </ListView>
</Window>

为什么?我能用它做什么吗?

1 个答案:

答案 0 :(得分:2)

尝试将VirtualizingPanel.ScrollUnit附加属性设置为Pixel

<ListView Height="100" Margin="10" VirtualizingPanel.ScrollUnit="Pixel">
    <ListViewItem Height="150" Background="LimeGreen">
        <TextBlock Text="ITEM" />
    </ListViewItem>
</ListView>