如何:获取数据集合的默认视图

视图允许以不同的方式查看相同的数据集合,具体取决于排序、筛选或分组条件。 每个集合都有一个共享的默认视图,当绑定将集合指定为其源时,该视图用作实际绑定源。 此示例演示如何获取集合的默认视图。

示例

若要创建视图,需要引用集合的对象。 可以通过引用自己的代码隐藏对象、获取数据上下文、获取数据源的属性或获取绑定的属性来获取此数据对象。 此示例演示如何获取数据对象的 DataContext,并使用它直接获取此集合的默认集合视图。

myCollectionView = (CollectionView)
    CollectionViewSource.GetDefaultView(rootElem.DataContext);
myCollectionView = CType(CollectionViewSource.GetDefaultView(rootElem.DataContext), CollectionView)

在此示例中,根元素是一个 StackPanel。 将 DataContext 设置为 myDataSource,后者引用一个数据提供程序,该程序是 Order 对象的 ObservableCollection<T>

<StackPanel.DataContext>
  <Binding Source="{StaticResource myDataSource}"/>
</StackPanel.DataContext>

或者,可以使用 CollectionViewSource 类进行实例化并绑定到自己的集合视图。 此集合视图仅由直接绑定到它的控件共享。 有关示例,请参阅数据绑定概述中的“如何创建视图”部分。

有关集合视图提供的功能示例,请参阅对视图中的数据进行排序筛选视图中的数据通过数据集合视图中的对象导航

另请参阅