ListViewCachingStrategy Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří výčet strategií ukládání do mezipaměti pro ListView.
Tento výčet podporuje bitové kombinace hodnot jeho členů.
public enum class ListViewCachingStrategy
[System.Flags]
public enum ListViewCachingStrategy
[<System.Flags>]
type ListViewCachingStrategy =
Public Enum ListViewCachingStrategy
- Dědičnost
-
ListViewCachingStrategy
- Atributy
Pole
Name | Hodnota | Description |
---|---|---|
RetainElement | 0 | Označuje, že pro každou položku ve vlastnosti List View ItemsSource bude jeden jedinečný prvek vytvořen z DataTemplate. |
RecycleElement | 1 | Označuje, že nepotřebné buňky budou mít kontexty vazby aktualizované na buňku, která je potřeba. |
RecycleElementAndDataTemplate | 3 | Označuje, že kromě chování určeného RecycleElementobjekty , DataTemplate které jsou vybrány objekty DataTemplateSelector , které jsou vybrány v mezipaměti datovým typem šablony. |
Poznámky
Vývojáři aplikací můžou při vytváření ListView jedné z těchto hodnot určit, jestli zobrazení seznamu minimalizuje nároky na paměť a rychlost provádění pomocí buněk seznamu recyklace, nebo místo toho vygeneruje buňku pro každou položku v seznamu. V současné době je výchozím chováním zachovat data položek v vygenerovaných buňkách, pokud nejsou potřeba. (Položky nejsou potřeba, například když jsou dostatečně daleko mimo obrazovku, že jejich zobrazení není bezprostřední.) Toto chování odpovídá hodnotě RetainElement. Z důvodů výkonu je pravděpodobné, že se výchozí chování v budoucí verzi změní na RecycleElement . Mezitím by vývojáři aplikací měli při vytváření nového zobrazení seznamu určit RecycleElement z důvodu paměti a výkonu.
Výhoda výkonu RecycleElement je tak skvělá, že vývojáři aplikací dostali zástupce syntaxe XAML pro inicializaci zobrazení seznamu. x:TypeArguments
Místo syntaxe, která určuje parametr pro ListView(ListViewCachingStrategy) konstruktor, XAML pro Microsoft.Maui.Controls poskytuje atribut XAML pro neexistující vlastnost, která odpovídá argumentu strategie ukládání do mezipaměti konstruktoru. Vývojáři aplikací můžou nastavit CachingStrategy
atribut na jednu z RecycleElement
(upřednostňovaných) nebo RetainElement
hodnot a zvolit strategii ukládání do mezipaměti. Příklad:
<ListView CachingStrategy="RecycleElement" >
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<!-- ... -->
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
Poznámka: Když vývojáři určí RecycleElement, OnElementChanged
události se nevyvolají, když jsou buňky recyklovány. Místo toho je buňka zachována a její hodnoty vlastností se mění, když je kontext vazby aktualizován na dostupnou buňku, OnElementPropertyChanged
jsou vyvolány události. Vývojáři aplikací by měli pamatovat na naslouchání správným událostem a měli by si uvědomit, že pokud se výchozí chování v budoucí verzi změní RecycleElement , bude potřeba aktualizovat jejich vykreslovací moduly.
Poznámka: Platforma UPW ignoruje RetainElement, protože vždy používá ukládání do mezipaměti ke zlepšení výkonu. Proto pokud se vývojář rozhodl nepoužívat datové vazby, musí použít OnBindingContextChanged() k aktualizaci dat buněk v UPW, protože se vždy chová, jako by RecycleElement byl zadán.