LongListSelector是否支持数据虚拟化?我在几个博客上读到它可以,但不能让它工作。
下面是我尝试过的内容:我在列表中提供了一个作为ItemsSource的IList实现。问题是List调用GetEnumerator()而不是this[int index]来获取列表项。
所以我的问题是:如何实现LongListSelector的数据虚拟化
发布于 2011-07-25 16:50:21
正如您所说,即使在呈现GetEnumerator类型时,LongListSelector仍然是基于IList的。最有可能的情况是,需要重写控件以支持此目的。虽然博客可能会说它支持它,但没有人说如何支持它,所以我不倾向于相信它们。LongListSelector的默认值是呈现所有项。
至于数据的加载,可以使用ObservableCollection逐级加载。我得到了一个example project,它展示了如何将ObservableCollection与LongListSelector结合使用。
基本上,这可以允许您逐步向组中添加更多组和/或更多数据,并且UI应该相应地更新。
发布于 2012-04-16 12:02:43
我看了LongListSelector的源代码,它是不可能虚拟化的后备存储。LongListSelector通过foreach循环加载组列表中的每一项。
https://stackoverflow.com/questions/6768725
复制相似问题