积极答复者
C++/CX开发中,关于Windows::UI::Xaml::Data::IICollectionView实现的问题!

问题
-
想用<SemanticZoom>、<GridView>和CollectionViewSource,实现数据的分组显示,我通过让自己的“数据源类”实现了Windows::UI::Xaml::Data::ICollectionView接口,又编写了一个实现Windows::UI::Xaml::Data::ICollectionViewFactory接口的类,这个实现了ICollectionViewFactory接口的类中的CreateView()方法,可以返回实现了ICollectionView接口的类的实例,然后把实现了ICollectionViewFactory接口类的实例,赋予CollectionViewSource.Source属性,运行后出现错误提示“参数错误”,如下图。就是在给CollectionViewSource.Source赋值时发生的错误。不知我上述的实现思路对不对,主要是对ICollectionView接口的作用理解得对不对?谢谢
答案
全部回复
-
我开始也是这样实现的,即用一个ref class 同时实现ICollectionView和ICollectionViewFactory,但把这个类实例赋给CollectionViewSource.Source时,出现“参数错误”的提示,就是在1楼贴出的图片。后来用自己的数据源类实现ICollectionViewFactory,另外单独实现一个ICollectionView类,数据源类里返回ICollectionView类的实例。然后再把数据源类的实例赋给CollectionViewSource.Source,运行时倒是没有上述错误了,但运行的窗口里却不显示任何内容。不知道为何?