2013-01-06 10 views
5

In WinRT se si desidera supportare il caricamento incrementale, l'origine dati deve implementare l'interfaccia ISupportIncrementalLoading. Ho implementato questo e i dati vengono visualizzati correttamente in un GridView.Come raggruppare gruppi di dati mentre vengono caricati in modo incrementale in WinRT?

I dati che sto tirando verso il basso in modo incrementale hanno una data associata. Voglio visualizzare il mese associato come "Intestazione di gruppo" per i dati già abbattuti. Tuttavia, non vedo un modo pulito per lo stile in "Intestazione di gruppo" poiché i mesi degli elementi caricati in modo incrementale cambiano.

Group Headers inserted into incrementally loaded data.

mi rendo conto che raggruppamento normale WinRT è supportato tramite il CollectionViewSource, tuttavia quanto comprendo ciò sia incompatibile con ISupportIncrementalLoading. Il che ha senso per il caso generale poiché gli elementi appena caricati potrebbero non essere effettivamente posizionati alla fine. Tuttavia, in questo caso so che i dati sono già raggruppati per mesi sul server e abbattuti in ordine.

C'è un modo per lo stile nell '"Intestazione di gruppo" come ho disegnato sopra?

+0

Ho trovato un blog (http://mikaelkoskinen.net/winrt-xaml-gridview-performance-problems-on-windows-rt-tablets/) che riguarda parzialmente il problema, rendendo l'intestazione del gruppo parte degli elementi e poi lo styling in modo diverso. C'è un modo per renderlo più simile a come si presenta il normale raggruppamento? – Unknown1987

risposta

1

CollectionViewSource è compatibile con ISupportIncrementalLoading, basta impostare l'origine di CollectionViewSource su qualcosa che implementa ISupportIncrementalLoading.

+0

Hai provato questo? Così facendo non si attivano le chiamate a LoadMoreItemsAsync() né HasMoreItems(). – Unknown1987

+2

scusa non ho notato che hai citato il tuo raggruppamento abilitato. Il raggruppamento non funziona con la virtualizzazione dell'interfaccia utente. MSFT impone a UIElement in ItemsControl di avere le stesse dimensioni per ottenere la virtualizzazione dell'interfaccia utente. Per loro è molto importante sviluppare WinRT più velocemente. –

Problemi correlati