Comment : obtenir la vue par défaut d'une collection de donnéesHow to: Get the Default View of a Data Collection

Les vues permettent d’afficher la même collection de données de différentes façons, en fonction du tri, du filtrage ou des critères de regroupement.Views allow the same data collection to be viewed in different ways, depending on sorting, filtering, or grouping criteria. Chaque collection possède une vue partagée par défaut, qui est utilisée comme source de liaison réelle lorsqu’une liaison spécifie une collection comme source.Every collection has one shared default view, which is used as the actual binding source when a binding specifies a collection as its source. Cet exemple montre comment obtenir la vue par défaut d’une collection.This example shows how to get the default view of a collection.

ExempleExample

Pour créer la vue, vous avez besoin d’une référence d’objet à la collection.To create the view, you need an object reference to the collection. Cet objet de données peut être obtenu en référençant votre propre objet code-behind, en obtenant le contexte de données, en obtenant une propriété de la source de données ou en obtenant une propriété de la liaison.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. Cet exemple montre comment obtenir la DataContext d’un objet de données et l’utiliser pour obtenir directement la vue de collection par défaut pour cette collection.This example shows how to get the DataContext of a data object and use it to directly obtain the default collection view for this collection.

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

Dans cet exemple, l’élément racine est un StackPanel.In this example, the root element is a StackPanel. La DataContext est définie sur myDataSource, qui fait référence à un fournisseur de données qui est un ObservableCollection<T> d’objets de commande .The DataContext is set to myDataSource, which refers to a data provider that is an ObservableCollection<T> of Order objects.

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

Vous pouvez également instancier et lier votre propre vue de collection à l’aide de la classe CollectionViewSource.Alternatively, you can instantiate and bind to your own collection view using the CollectionViewSource class. Cette vue de collection est partagée uniquement par les contrôles qui y sont liés directement.This collection view is only shared by controls that bind to it directly. Pour obtenir un exemple, consultez la section How to Create a View dans la vue d’ensemblede la liaison de données.For an example, see the How to Create a View section in the Data Binding Overview.

Pour obtenir des exemples des fonctionnalités offertes par une vue de collection, consultez Trier des données dans une vue, Filtrer les données dans une vueet naviguer parmi les objets dans un CollectionView de données.For examples of the functionality provided by a collection view, see Sort Data in a View, Filter Data in a View, and Navigate Through the Objects in a Data CollectionView.

Voir aussiSee also