首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示ListView的WrapPanel未虚拟化

显示ListView的WrapPanel未虚拟化
EN

Stack Overflow用户
提问于 2015-03-02 17:59:57
回答 2查看 2.2K关注 0票数 0

我测试了虚拟化的许多变体,但没有得到一个可工作的版本。我通过Snoop检查了虚拟化,其中虚拟化的可视化树只包含显示的项,而非虚拟化包含所有项。

ItemsSource (NumberList)包含500项(整数1..500)。以下版本已虚拟化:

代码语言:javascript
复制
    <Grid>
        <ListView Name="lbDefault" Margin="15,10" Width="300" Height="200"
     ItemsSource="{Binding NumberList}"
     ScrollViewer.VerticalScrollBarVisibility="Auto"  
     ScrollViewer.HorizontalScrollBarVisibility="Disabled">
            <ListView.ItemsPanel>
                <ItemsPanelTemplate>
                    <VirtualizingStackPanel/>
                </ItemsPanelTemplate>
            </ListView.ItemsPanel>
        </ListView>
    </Grid>

以下代码不起作用:

代码语言:javascript
复制
<Grid>
    <ListView Name="lbDefault" Margin="15,10" Width="300" Height="200"
     ItemsSource="{Binding NumberList}"
     ScrollViewer.VerticalScrollBarVisibility="Auto"  
     ScrollViewer.HorizontalScrollBarVisibility="Disabled"
     VirtualizingPanel.IsVirtualizing="True" 
     ScrollViewer.CanContentScroll="True">
        <ListView.ItemsPanel>
            <ItemsPanelTemplate>
                <WrapPanel/>
            </ItemsPanelTemplate>
        </ListView.ItemsPanel>
    </ListView>
</Grid>

有什么想法吗?

谢谢你,小谢

EN

回答 2

Stack Overflow用户

发布于 2015-03-02 19:00:40

看看HereHere,告诉你如何获得一个虚拟化的包装面板。

票数 0
EN

Stack Overflow用户

发布于 2016-03-04 18:49:48

如果你还没有找到解决方案,可以查看我的VirtualizingWrapPanel:https://github.com/Thomas-Hoffmann/HorizontalVirtualizingWrapPanel

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28806933

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档