ListViewCachingStrategy 列舉
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
列舉 ListView 的快取策略。
此列舉支援其成員值的位元組合。
public enum class ListViewCachingStrategy
[System.Flags]
public enum ListViewCachingStrategy
[<System.Flags>]
type ListViewCachingStrategy =
Public Enum ListViewCachingStrategy
- 繼承
-
ListViewCachingStrategy
- 屬性
欄位
名稱 | 值 | Description |
---|---|---|
RetainElement | 0 | 表示針對清單檢視的 ItemsSource 屬性中每個項目,會從 DataTemplate 建構唯一的項目。 |
RecycleElement | 1 | 表示不需要的儲存格會將其繫結內容更新為所需儲存格的內容。 |
RecycleElementAndDataTemplate | 3 | 表示除了 RecycleElement 指定的行為,還會依資料範本類型快取 DataTemplateSelector 所選取的 DataTemplate 物件。 |
備註
應用程式開發人員可以在建構 ListView 時指定下列其中一個值,以判斷清單檢視會藉由回收清單儲存格來將記憶體使用量和速度執行降到最低,或改為為清單中的每一個專案產生數據格。 目前,預設行為是在不需要項目數據時,保留其產生的儲存格中的項目數據。 (例如,當專案離螢幕夠遠時,他們的顯示並不迫在眉睫。此行為會對應至的值 RetainElement。 基於效能考慮,預設行為可能會在未來版本中變更為 RecycleElement 。 同時,基於記憶體和效能考慮,應用程式開發人員應該在建構新的清單檢視時指定 RecycleElement 。
的 RecycleElement 效能優勢非常出色,因此應用程式開發人員已提供 XAML 語法快捷方式來初始化清單檢視。 x:TypeArguments
XAML for Microsoft.Maui.Controls 不是指定建構函式參數的ListView(ListViewCachingStrategy)語法,而是為對應至建構函式快取策略自變數的不存在屬性提供 XAML 屬性。 應用程式開發人員可以將 屬性設定CachingStrategy
為 [慣用] 或RetainElement
值,RecycleElement
以選擇快取策略。 例如:
<ListView CachingStrategy="RecycleElement" >
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<!-- ... -->
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
注意:當開發人員指定 RecycleElement時, OnElementChanged
不會在回收儲存格時引發事件。 相反地,當系結內容更新為可用單元格時,會保留數據格,而且其屬性值會變更, OnElementPropertyChanged
並引發事件。 應用程式開發人員應該記得接聽正確的事件,而且應該注意,如果預設行為在未來版本中變更為 RecycleElement ,則必須更新其轉譯器。
注意:UWP 平臺會 RetainElement忽略 ,因為它一律會使用快取來改善效能。 因此,如果開發人員已選擇不使用數據系結,則必須使用 OnBindingContextChanged() 來更新UWP上的儲存格數據,因為它一律會以指定的方式 RecycleElement 運作。