[英]LongListSelector Data Virtualization
LongListSelector
是否支持數據虛擬化? 我在幾個博客上讀到它確實如此,但無法讓它工作。
這是我嘗試過的:我將IList
實現作為ItemsSource
提供給 List。 問題是 List 調用GetEnumerator()
而不是this[int index]
來獲取列表項。
所以我的問題是:如何為LongListSelector
實現數據虛擬化?
正如您所說,即使在呈現 IList 類型時, LongListSelector 仍然基於 GetEnumerator 。 很可能需要重寫控件以支持該目的。 雖然博客可能會說它支持它,但沒有一個說如何,所以我不傾向於相信它們。 LongListSelector 的默認設置是呈現所有項目。
至於數據的加載,可以使用 ObservableCollection 逐步完成。 我有一個 示例項目,它展示了如何將 ObservableCollection 與 LongListSelector 結合使用。
基本上,這可以讓您逐步添加更多組和/或向組中添加更多數據,並且 UI 應相應更新。
我查看了 LongListSelector 源代碼,無法虛擬化后備存儲。 LongListSelector 通過 foreach 循環從組列表中加載每個項目。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.