Comment : obtenir la vue par défaut d'une collection de données

Les vues permettent d'afficher la même collection de données de différentes façons, selon les critères de tri, de filtrage ou de regroupement. Chaque collection a un affichage par défaut partagé, utilisé comme source de liaison réelle lorsqu'une liaison spécifie une collection comme sa source. Cet exemple montre comment obtenir la vue par défaut d'une collection

Exemple

Pour créer la vue, vous avez besoin d'une référence d'objet vers la collection. Vous pouvez obtenir cet objet de données en référençant votre propre objet code-behind, en obtenant le contexte de données ou bien en obtenant une propriété de la source de données ou de la liaison. Cet exemple montre comment obtenir le DataContext d'un objet de données et l'utiliser pour obtenir directement la vue de collection par défaut de cette collection.

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

Dans cet exemple, l'élément racine est un StackPanel. Le DataContext a la valeur myDataSource, qui fait référence à un fournisseur de données lequel est une ObservableCollection<T> d'objets d'ordre.

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

Vous avez également la possibilité d'instancier et de lier votre propre vue de collection au moyen de la classe CollectionViewSource. Cette vue de collection est partagée uniquement par les contrôles que y sont liés directement. Pour obtenir un exemple, consultez la section Comment créer une vue sous Vue d'ensemble de la liaison de données.

Pour obtenir des exemples des fonctionnalités offertes par une vue de collection, consultez Comment : trier des données dans une vue, Comment : filtrer les données d'une vue et Comment : naviguer dans les objets d'un CollectionView de données.

Voir aussi

Tâches

Comment : trier et grouper des données à l'aide d'une vue en XAML

Autres ressources

Rubriques "Comment" relatives aux liaisons de données