ISupportIncrementalLoading与VariableSizedWrapGrid结合使用

时间:2012-12-12 20:01:01

标签: xaml windows-runtime lazy-loading

我有一个ObservableCollection<T>来实现ISupportIncrementalLoading接口。

当我将此集合绑定到普通的gridview时,一切正常。

但是当我将ItemsPanel模板更改为VariableSizedWrapGrid时。增量加载不再起作用。

Xaml有效:

<ItemsPanelTemplate>                        
    <VirtualizingStackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>

不起作用的Xaml:

<ItemsPanelTemplate>
    <VariableSizedWrapGrid Orientation="Vertical" ItemHeight="250" ItemWidth="250"  Margin="0,0,80,0"/>
</ItemsPanelTemplate>

我还找到了this&amp; this。声明VariableSizedWrapGrid不支持ISupportIncremetalLoading

是否有人编写过VariableSizedWrapGrid,支持增量加载?还是一个开源解决方案?

2 个答案:

答案 0 :(得分:0)

只有两个面板支持增量加载:VirtualizingStackPanel和WrapGrid。我不知道任何开源解决方案。

答案 1 :(得分:0)

它不支持,因为面板本身必须能够虚拟化元素。由于datatemplates insice的VariableSizedWrapGrid不同,因此不可能进行虚拟化,因此您想要绘制的每个元素都必须在开始时出现。