2012-12-12 10 views
7

Ich habe eine ObservableCollection<T>, die die ISupportIncrementalLoading Schnittstelle implementiert.ISupportIncrementalLoading kombiniert mit VariableSizedWrapGrid

Wenn ich diese Sammlung an eine normale Gridview binde, funktioniert alles gut.

Aber wenn ich die ItemsPanel Vorlage zu VariableSizedWrapGrid ändern. Das inkrementelle Laden funktioniert nicht mehr.

XAML, das funktioniert:

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

XAML, das nicht funktioniert:

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

Ich habe auch festgestellt this & this. Die Angabe VariableSizedWrapGrid unterstützt ISupportIncremetalLoading nicht.

Gibt es jemanden, der ein VariableSizedWrapGrid geschrieben hat, das inkrementelles Laden unterstützt? Oder eine Open Source-Lösung?

Antwort

0

Es gibt nur zwei Panels, die das inkrementelle Laden unterstützen: VirtualizingStackPanel und WrapGrid. Ich kenne keine Open-Source-Lösung.

0

Es wird nicht unterstützt, da das Panel selbst in der Lage sein muss, Elemente zu virtualisieren. Da die Datatemplates in einem VariableSizedWrapGrid anders sind, ist eine Virtualisierung nicht möglich, daher muss jedes Element, das gezeichnet werden soll, am Anfang vorhanden sein.