是否可以在不使用CollectionViewSource的情况下对GridView进行分组?

时间:2012-09-23 01:16:40

标签: gridview windows-8 windows-runtime winrt-xaml

将功能绑定到类而不是接口似乎是一种有点尴尬的设计。有没有人设法在没有CollectionViewSource的情况下对GridView进行分组?

这里也是一个额外的问题:为什么你必须通过绑定来引用CollectionViewSource资源:

    <GridView
        ItemsSource="{Binding Source={StaticResource groupedData}}"
        >

而不是

    <GridView
        ItemsSource="{StaticResource groupedData}"
        >

...

2 个答案:

答案 0 :(得分:3)

您不必使用CollectionViewSource。您需要做的就是使用ICollectionView接口创建自己的类。使用CollectionViewSource可以为您节省大量代码。

答案 1 :(得分:2)

我已经尝试了几天不使用CollectionViewSource。不是因为我觉得它很糟糕但我不知道你必须这样做。 IMO无法拥有群组和分组项目。 我不知道为什么(我猜你读refs或看到你会理解的代码)但你必须这样做。当您将分组数据放入GridView时,您将获得第一级(仅限组),但您将无法访问这些项目。只能将它与CollectionViewSource连接,你可以同时使用