none
metro如何实现滚动增量加载分组数据 RRS feed

  • 问题

  •  class Item{
     public string Title;
     public string ImageUri;
    }

    我有大量的以上的数据,需要在滚动的时候增量显示,原先我是用Listview增量显示的,每次显示16个,但是实际的效果没法分组,所有的Item看起来都是挨着的。

            <CollectionViewSource
                x:Name="itemsSource"
                Source="{Binding AllGroups}"
                IsSourceGrouped="true"
                ItemsPath="Items"/>

    现在需要用gridview分组来显示,每8个一组,自己实现不成。希望知道的指导下,谢谢

    2013年5月27日 2:33

答案

  • 直接通过 ISupportIncrementalLoading 接口实现,在一个分组的ListView上面好像不行,至少我的想法是实现不了的。

    不过分组你可以通过嵌套ListView 来实现,用包含ListView的ItemTemplate 来显示分组数据,而嵌套的内部ListView 可以通过 ISupportIncrementalLoading 接口的集合对象来实现增量加载数据


    Bob Bao

    Do you still use the same Windows 8 LockScreen always? Download Chameleon Win8 App quickly, that changes your LockScreen constantly.
    你是否还在看着一成不变的Windows 8锁屏而烦恼,赶紧下载这个 百变锁屏 应用,让你的锁屏不断地变化起来。

    • 已标记为答案 skczjun 2013年5月31日 5:13
    2013年5月27日 8:18
    版主

全部回复

  • 直接通过 ISupportIncrementalLoading 接口实现,在一个分组的ListView上面好像不行,至少我的想法是实现不了的。

    不过分组你可以通过嵌套ListView 来实现,用包含ListView的ItemTemplate 来显示分组数据,而嵌套的内部ListView 可以通过 ISupportIncrementalLoading 接口的集合对象来实现增量加载数据


    Bob Bao

    Do you still use the same Windows 8 LockScreen always? Download Chameleon Win8 App quickly, that changes your LockScreen constantly.
    你是否还在看着一成不变的Windows 8锁屏而烦恼,赶紧下载这个 百变锁屏 应用,让你的锁屏不断地变化起来。

    • 已标记为答案 skczjun 2013年5月31日 5:13
    2013年5月27日 8:18
    版主
  • 嵌套的内部listview?我要实现出来的看起来是像

    123     abc   123

    456     def    456

    789     ghi    789

    其中12345679是一组,abcdefghi是一组,他们之间在UI是有空隙的,不是外部的Listview实现吗

    2013年5月27日 13:46
  • 这个论坛挖坟没事吧。。

    我说一下我的经验:貌似 ListView 分组增量加载 是不能共存的!!!如果你的主要目的是为了增量加载,次要目的是分组的样式效果,那么,可以利用 TemplateSelector,创建一个 分组栏 模板(完全可以做的和 ListView 默认分组栏样式一样!),在增量加载时添加一个分组栏项groupBar(如果你的 Item类 有一个 Id 成员,那么给这个 分组栏项groupBar 的 Id 赋值为组名,如:groupBar.Id=“这是分组1”)像这样: [item1, item2, groupBar, itemA, itemB, ...] ,这样,TemplateSelector 根据 ItemId 来选择 ListViewItem 的模板就 OK 了。(●'◡'●)

    2016年2月7日 8:56