Практическое руководство. Получение представления коллекции данных по умолчанию
Представления позволяют просматривать одну и ту же коллекцию данных разными способами в зависимости от условий сортировки, фильтрации или группировки. Каждая коллекция имеет одно общее представление по умолчанию, которое используется в качестве фактического источника привязки, когда привязка указывает коллекцию в качестве источника. В этом примере показано, как получить представление коллекции по умолчанию.
Пример
Чтобы создать представление, требуется ссылка на объект коллекции. Этот объект данных можно получить, ссылаясь на собственный объект кода, путем получения контекста данных, получения свойства источника данных или получения свойства привязки. В этом примере показано, как получить DataContext объекта данных и использовать его для непосредственного получения представления коллекции по умолчанию для этой коллекции.
myCollectionView = (CollectionView)
CollectionViewSource.GetDefaultView(rootElem.DataContext);
myCollectionView = CType(CollectionViewSource.GetDefaultView(rootElem.DataContext), CollectionView)
В этом примере корневой элемент является StackPanel. Для DataContext установлен myDataSource, который относится к поставщику данных и является ObservableCollection<T> объекта Order.
<StackPanel.DataContext>
<Binding Source="{StaticResource myDataSource}"/>
</StackPanel.DataContext>
Кроме того, можно создать экземпляр и привязаться к собственному представлению коллекции с помощью класса CollectionViewSource. Это представление коллекции предоставляется только элементами управления, которые привязываются к нему напрямую. Пример см. в разделе "Создание представления" в обзоре привязки данных.
Примеры функций, предоставляемых представлением коллекции, см. в разделе Сортировка данных в представлении, фильтрация данных в представлениии навигации по объектам вData CollectionView.
См. также
.NET Desktop feedback