2013-01-06 23 views
5

在WinRT中,如果我们想要支持增量加载,数据源必须实现ISupportIncrementalLoading接口。我已经实现了这个并且数据在GridView中正确显示。如何在WinRT中逐步加载数据样式组?

我逐渐拉下的数据有一个与它相关的日期。我想将关联的月份显示为已经拉下的数据的“组页眉”。但是,随着增量加载项目的月份更改,我看不到在“组标题”中进行样式设置的干净方式。

Group Headers inserted into incrementally loaded data.

我意识到,在WinRT的正常分组通过CollectionViewSource支持,但据我了解,这是与ISupportIncrementalLoading不兼容。这对于一般情况来说是有意义的,因为新加载的项目实际上可能不会放在最后。但是,在这种情况下,我知道数据已按月在服务器上分组,并按顺序下拉。

有没有一种方法可以在上面绘制的“组标题”中进行样式化?

+0

我发现了部分处理问题的博客(http://mikaelkoskinen.net/winrt-xaml-gridview-performance-problems-on-windows-rt-tablets/),通过将组头部分的元素,然后以不同的样式进行设计。有没有办法让它更接近正常分组的样子? – Unknown1987

回答

1

CollectionViewSource与ISupportIncrementalLoading兼容,只需将CollectionViewSource的源设置为某个东西实现ISupportIncrementalLoading。

+0

你试过这个吗?这样做不会触发调用LoadMoreItemsAsync()或HasMoreItems()覆盖。 – Unknown1987

+2

对不起,我没有注意到你提到你启用了分组。分组不适用于UI虚拟化。 MSFT强制ItemsControl中的每个UIElement的大小相同以获得UI虚拟化。他们更快地开发winRT是一个很大的假设。 –