How to: Get the Default View of a Data Collection
Views allow the same data collection to be viewed in different ways, depending on sorting or filtering. Views also provide a current record pointer concept and enable moving the pointer. This example shows how to create a view object.
Example
To create the view, you need an object reference to the original data object. This data object can be obtained by referencing your own code-behind object, by getting the data context, by getting a property of the data source, or by getting a property of the binding. This example shows how to get the DataContext of a data object and use it to directly obtain the associated CollectionView. The GetDefaultView method is used to obtain the default collection view of the root element.
myCollectionView = (CollectionView)
CollectionViewSource.GetDefaultView(rootElem.DataContext);
In this example, the root element is a StackPanel. The DataContext is set to myDataSource, which refers to a data provider that is an ObservableCollection of Order objects.
<StackPanel.DataContext>
<Binding Source="{StaticResource myDataSource}"/>
</StackPanel.DataContext>
Alternatively, you can instantiate a view object directly using the CollectionViewSource class. For an example, see the How to Create a View section in the Data Binding Overview.
For examples of the functionality provided by a collection view, see How to: Sort Data in View, How to: Filter Data in a View, and How to: Navigate Through the Objects in a Data CollectionView.
See Also
Tasks
How to: Sort and Group Data Using a View in XAML