为WP7虚拟化WrapPanel

时间:2011-11-02 10:35:30

标签: windows-phone-7 wrappanel virtualizingstackpanel

我需要与我的Facebook好友一起创建一个包装面板,这意味着itemcount超过400,所有项目加载需要5-10秒。

   <ListBox.ItemsPanel>
        <ItemsPanelTemplate>
            <toolkit:WrapPanel/>
        </ItemsPanelTemplate>
    </ListBox.ItemsPanel>

这段代码很好,但它将所有元素放在1行......:

    <ListBox.ItemsPanel>
        <ItemsPanelTemplate>
            <VirtualizingStackPanel Orientation="Horizontal"/>
        </ItemsPanelTemplate>
    </ListBox.ItemsPanel>

如何将项目包装添加到VirtualizingStackPanel或如何将虚拟化添加到WrapPanel:

2 个答案:

答案 0 :(得分:0)

嗯,WrapPanel的重点在于它可以根据内容的大小进行调整。因此需要渲染所有项目来确定大小。

因此,当涉及虚拟化该部分时,你几乎没有运气。但是,如果您正在加载400张图像,则可以使用LowProfileImageLoader来大幅提高加载速度。

您可以找到LowProfileImageLoader source code on my GitHub的镜像。

答案 1 :(得分:0)

我通过创建一个简单的列表框来使用它,每个元素包含一个包含4个图像的stackpanel。欢呼声