CollectionView Classe

Définition

Représente une vue pour le regroupement, le tri, le filtrage et la navigation dans une collection de données.Represents a view for grouping, sorting, filtering, and navigating a data collection.

public ref class CollectionView : System::Windows::Threading::DispatcherObject, System::Collections::IEnumerable, System::Collections::Specialized::INotifyCollectionChanged, System::ComponentModel::ICollectionView, System::ComponentModel::INotifyPropertyChanged
public class CollectionView : System.Windows.Threading.DispatcherObject, System.Collections.IEnumerable, System.Collections.Specialized.INotifyCollectionChanged, System.ComponentModel.ICollectionView, System.ComponentModel.INotifyPropertyChanged
type CollectionView = class
    inherit DispatcherObject
    interface ICollectionView
    interface IEnumerable
    interface INotifyCollectionChanged
    interface INotifyPropertyChanged
Public Class CollectionView
Inherits DispatcherObject
Implements ICollectionView, IEnumerable, INotifyCollectionChanged, INotifyPropertyChanged
Héritage
CollectionView
Dérivé
Implémente

Remarques

Vous ne devez pas créer d’objets de cette classe dans votre code.You should not create objects of this class in your code. Pour créer un affichage de collection pour une collection qui implémente IEnumerableuniquement, créez CollectionViewSource un objet, ajoutez votre collection à Source la propriété et récupérez la vue de collection View à partir de la propriété.To create a collection view for a collection that only implements IEnumerable, create a CollectionViewSource object, add your collection to the Source property, and get the collection view from the View property.

Vous pouvez considérer une vue de collection comme une couche sur une collection de sources de liaison qui vous permet de parcourir et d’afficher la collection basée sur des requêtes de tri, de filtrage et de groupe, sans avoir à manipuler la collection source sous-jacente elle-même.You can think of a collection view as a layer on top of a binding source collection that allows you to navigate and display the collection based on sort, filter, and group queries, all without having to manipulate the underlying source collection itself. Si la collection source implémente l' INotifyCollectionChanged interface, les modifications qui déclenchent CollectionChanged l’événement sont propagées aux vues.If the source collection implements the INotifyCollectionChanged interface, the changes that raise the CollectionChanged event are propagated to the views.

Étant donné qu’une vue ne modifie pas la collection source sous-jacente, plusieurs vues peuvent être associées à une collection source.Because a view does not change the underlying source collection, a source collection can have multiple views associated with it. En utilisant des vues, vous pouvez afficher les mêmes données de différentes façons.By using views, you can display the same data in different ways. Par exemple, vous pouvez utiliser deux vues sur une collection d' Task objets pour afficher les tâches triées par priorité sur une partie de la page et regroupées par zone sur une autre partie de la page.For example, you can use two views on a collection of Task objects to show tasks sorted by priority on one part of the page and grouped by area on another part of the page.

Dans WPFWPF les applications, toutes les collections sont associées à une vue de collection par défaut.In WPFWPF applications, all collections have an associated default collection view. Au lieu d’utiliser directement la collection, le moteur de liaison accède toujours à la collection via la vue associée.Rather than working with the collection directly, the binding engine always accesses the collection through the associated view. Pour obtenir la vue par défaut, utilisez CollectionViewSource.GetDefaultView la méthode.To get the default view, use the CollectionViewSource.GetDefaultView method. Une classe interne basée sur CollectionView est l’affichage par défaut pour les collections qui IEnumerableimplémentent uniquement.An internal class based on CollectionView is the default view for collections that implement only IEnumerable. ListCollectionViewest l’affichage par défaut pour les collections IListqui implémentent.ListCollectionView is the default view for collections that implement IList. BindingListCollectionViewest l’affichage par défaut pour les collections IBindingListView qui IBindingListimplémentent ou.BindingListCollectionView is the default view for collections that implement IBindingListView or IBindingList.

Vous pouvez également créer une vue de votre collection dans langage XAML (eXtensible Application Markup Language)Extensible Application Markup Language (XAML) à l’aide de la CollectionViewSource classe, puis lier votre contrôle à cette vue.Alternatively, you can create a view of your collection in langage XAML (eXtensible Application Markup Language)Extensible Application Markup Language (XAML) by using the CollectionViewSource class and then bind your control to that view. La CollectionViewSource classe est la XAMLXAML représentation de la CollectionView classe.The CollectionViewSource class is the XAMLXAML representation of the CollectionView class. Pour voir un exemple, consultez Comment : Trier et regrouper des données à l'aide d’une vue en XAML.For an example, see How to: Sort and Group Data Using a View in XAML.

Pour plus d’informations, consultez « liaison aux collections » dans vue d’ensemblede la liaison de données.For more information, see "Binding to Collections" in Data Binding Overview.

Pour définir une vue dans XAMLXAML, utilisez la CollectionViewSource classe.To set a view in XAMLXAML, use the CollectionViewSource class. CollectionViewSourceest la XAMLXAML représentation de la CollectionView classe et expose les membres les plus couramment utilisés de la CollectionView classe.CollectionViewSource is the XAMLXAML representation of the CollectionView class, and it exposes the most commonly used members of the CollectionView class.

Constructeurs

CollectionView(IEnumerable)

Initialise une nouvelle instance de la classe CollectionView qui représente une vue de la collection spécifiée.Initializes a new instance of the CollectionView class that represents a view of the specified collection.

Propriétés

AllowsCrossThreadChanges

Obtient une valeur indiquant si un autre thread que celui qui a créé la CollectionView peut modifier la SourceCollection.Gets a value that indicates whether a thread other than the one that created the CollectionView can change the SourceCollection.

CanFilter

Obtient une valeur qui indique si la vue prend en charge le filtrage.Gets a value that indicates whether the view supports filtering.

CanGroup

Obtient une valeur qui indique si la vue prend en charge le regroupement.Gets a value that indicates whether the view supports grouping.

CanSort

Obtient une valeur qui indique si la vue prend en charge le tri.Gets a value that indicates whether the view supports sorting.

Comparer

Retourne un objet que vous pouvez utiliser pour effectuer des comparaisons entre éléments de la vue.Returns an object that you can use to compare items in the view.

Count

Obtient le nombre d'enregistrements dans la vue.Gets the number of records in the view.

Culture

Obtient ou définit les informations de culture à utiliser pendant le tri.Gets or sets the culture information to use during sorting.

CurrentItem

Obtient l'élément actif de la vue.Gets the current item in the view.

CurrentPosition

Obtient la position ordinale de CurrentItem dans la vue (éventuellement triée et filtrée).Gets the ordinal position of the CurrentItem within the (optionally sorted and filtered) view.

Dispatcher

Obtient le Dispatcher associé à DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with.

(Hérité de DispatcherObject)
Filter

Obtient ou définit une méthode utilisée pour déterminer si un élément peut être inclus dans l’affichage.Gets or sets a method used to determine if an item is suitable for inclusion in the view.

GroupDescriptions

Obtient une collection d'objets GroupDescription qui décrit comment les éléments de la collection sont regroupés dans la vue.Gets a collection of GroupDescription objects that describes how the items in the collection are grouped in the view.

Groups

Obtient une collection des groupes de niveau supérieur construite sur la base de la propriété GroupDescriptions.Gets a collection of the top-level groups that is constructed based on the GroupDescriptions property.

IsCurrentAfterLast

Obtient une valeur qui indique si le CurrentItem de la vue est au-delà de la fin de la collection.Gets a value that indicates whether the CurrentItem of the view is beyond the end of the collection.

IsCurrentBeforeFirst

Obtient une valeur qui indique si le CurrentItem de la vue est avant le début de la collection.Gets a value that indicates whether the CurrentItem of the view is before the beginning of the collection.

IsCurrentInSync

Obtient une valeur qui indique si CurrentItem est à la CurrentPosition.Gets a value that indicates whether the CurrentItem is at the CurrentPosition.

IsDynamic

Obtient une valeur qui indique si la collection sous-jacente fournit des notifications de modification.Gets a value that indicates whether the underlying collection provides change notifications.

IsEmpty

Obtient une valeur qui indique si la vue (filtrée) résultante est vide.Gets a value that indicates whether the resulting (filtered) view is empty.

IsInUse

Obtient une valeur indiquant si un objet s'abonne aux événements de cette CollectionView.Gets a value that indicates whether any object is subscribing to the events of this CollectionView.

IsRefreshDeferred

Obtient une valeur qui indique s'il y a un DeferRefresh() en cours d'utilisation.Gets a value that indicates whether there is an outstanding DeferRefresh() in use.

NeedsRefresh

Obtient une valeur qui indique si la vue doit être actualisée.Gets a value that indicates whether the view needs to be refreshed.

NewItemPlaceholder

Obtient l'objet qui est dans la collection pour représenter un nouvel élément.Gets the object that is in the collection to represent a new item.

SortDescriptions

Obtient une collection de structures SortDescription qui décrit comment les éléments dans la collection sont triés dans la vue.Gets a collection of SortDescription structures that describes how the items in the collection are sorted in the view.

SourceCollection

Retourne la collection non filtrée sous-jacente.Returns the underlying unfiltered collection.

UpdatedOutsideDispatcher

Obtient une valeur qui indique s'il a été nécessaire de mettre à jour le journal des modifications parce qu'une notification CollectionChanged a été reçue sur un thread différent sans entrer d'abord dans le distributeur de thread interface utilisateur (UI)user interface (UI).Gets a value that indicates whether it has been necessary to update the change log because a CollectionChanged notification has been received on a different thread without first entering the interface utilisateur (UI)user interface (UI) thread dispatcher.

Méthodes

CheckAccess()

Détermine si le thread appelant a accès à ce DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Hérité de DispatcherObject)
ClearChangeLog()

Efface toutes modifications en attente du journal des modifications.Clears any pending changes from the change log.

ClearPendingChanges()

Efface les modifications non traitées relatives à la collection.Clears unprocessed changed to the collection.

Contains(Object)

Retourne une valeur qui indique si l'élément spécifié appartient à la vue.Returns a value that indicates whether the specified item belongs to the view.

DeferRefresh()

Entre dans un cycle différé que vous pouvez utiliser pour fusionner des modifications de la vue et retarder l'actualisation automatique.Enters a defer cycle that you can use to merge changes to the view and delay automatic refresh.

DetachFromSourceCollection()

Supprime la référence à la collection sous-jacente de la CollectionView.Removes the reference to the underlying collection from the CollectionView.

Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Hérité de Object)
GetEnumerator()

Retourne un objet que vous pouvez utiliser pour énumérer les éléments de la vue.Returns an object that you can use to enumerate the items in the view.

GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetItemAt(Int32)

Récupère l'élément à l'index de base zéro spécifié dans la vue.Retrieves the item at the specified zero-based index in the view.

GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
IndexOf(Object)

Retourne l'index auquel l'élément spécifié est localisé.Returns the index at which the specified item is located.

MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
MoveCurrentTo(Object)

Définit l'élément spécifié de façon à ce qu'il soit l'CurrentItem de la vue.Sets the specified item to be the CurrentItem in the view.

MoveCurrentToFirst()

Définit le premier élément de la vue comme CurrentItem.Sets the first item in the view as the CurrentItem.

MoveCurrentToLast()

Définit le dernier élément de la vue comme CurrentItem.Sets the last item in the view as the CurrentItem.

MoveCurrentToNext()

Définit l'élément après CurrentItem dans la vue comme CurrentItem.Sets the item after the CurrentItem in the view as the CurrentItem.

MoveCurrentToPosition(Int32)

Définit l'élément situé à l'index spécifié comme devant être le CurrentItem de la vue.Sets the item at the specified index to be the CurrentItem in the view.

MoveCurrentToPrevious()

Définit l'élément avant CurrentItem dans la vue comme CurrentItem.Sets the item before the CurrentItem in the view as the CurrentItem.

OKToChangeCurrent()

Retourne une valeur qui indique si la vue peut changer d'élément CurrentItem.Returns a value that indicates whether the view can change which item is the CurrentItem.

OnAllowsCrossThreadChangesChanged()

Se produit quand la propriété AllowsCrossThreadChanges change.Occurs when the AllowsCrossThreadChanges property changes.

OnBeginChangeLogging(NotifyCollectionChangedEventArgs)

Appelée par la classe de base pour notifier la classe dérivée qu'un événement CollectionChanged a été publié à la file d'attente de messages.Called by the base class to notify the derived class that an CollectionChanged event has been posted to the message queue.

OnCollectionChanged(NotifyCollectionChangedEventArgs)

Déclenche l'événement CollectionChanged.Raises the CollectionChanged event.

OnCollectionChanged(Object, NotifyCollectionChangedEventArgs)

Déclenche l'événement CollectionChanged.Raises the CollectionChanged event.

OnCurrentChanged()

Déclenche l'événement CurrentChanged.Raises the CurrentChanged event.

OnCurrentChanging()

Déclenche un événement CurrentChanging qui ne peut pas être annulé.Raises a CurrentChanging event that is not cancelable.

OnCurrentChanging(CurrentChangingEventArgs)

Déclenche l'événement CurrentChanging à l'aide des arguments spécifiés.Raises the CurrentChanging event with the specified arguments.

OnPropertyChanged(PropertyChangedEventArgs)

Déclenche l'événement PropertyChanged à l'aide des arguments spécifiés.Raises the PropertyChanged event using the specified arguments.

PassesFilter(Object)

Retourne une valeur qui indique si l'élément de la collection sous-jacente spécifié appartient à la vue.Returns a value that indicates whether the specified item in the underlying collection belongs to the view.

ProcessCollectionChanged(NotifyCollectionChangedEventArgs)

En cas de substitution dans une classe dérivée, traite une modification unique dans le thread Interface utilisateurUI.When overridden in a derived class, processes a single change on the Interface utilisateurUI thread.

ProcessPendingChanges()

Garantit que toutes les modifications en attente applicables à la collection ont été validées.Ensures that all pending changes to the collection have been committed.

Refresh()

Recrée la vue.Re-creates the view.

RefreshOrDefer()

Actualise la vue ou spécifie que la vue doit être actualisée lorsque le cycle différé se termine.Refreshes the view or specifies that the view needs to be refreshed when the defer cycle completes.

RefreshOverride()

Recrée la vue.Re-creates the view.

SetCurrent(Object, Int32)

Définit l'élément et l'index spécifiés comme valeurs des propriétés CurrentItem et CurrentPosition.Sets the specified item and index as the values of the CurrentItem and CurrentPosition properties.

SetCurrent(Object, Int32, Int32)

Définit l'élément et l'index spécifiés comme valeurs des propriétés CurrentItem et CurrentPosition.Sets the specified item and index as the values of the CurrentItem and CurrentPosition properties. Cette méthode peut être appelée à partir d'un constructeur d'une classe dérivée.This method can be called from a constructor of a derived class.

ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Hérité de Object)
VerifyAccess()

Garantit que le thread appelant a accès à DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Hérité de DispatcherObject)

Événements

CollectionChanged

Se produit lorsque la vue a été modifiée.Occurs when the view has changed.

CurrentChanged

Se produit après la modification de CurrentItem.Occurs after the CurrentItem has changed.

CurrentChanging

Se produit lorsque CurrentItem est en cours de modification.Occurs when the CurrentItem is changing.

PropertyChanged

Se produit lorsqu'une valeur de la propriété a été modifiée.Occurs when a property value has changed.

Implémentations d’interfaces explicites

IEnumerable.GetEnumerator()

Retourne un objet IEnumerator que vous pouvez utiliser pour énumérer les éléments de la vue.Returns an IEnumerator object that you can use to enumerate the items in the view.

INotifyCollectionChanged.CollectionChanged

Se produit lorsque la vue a été modifiée.Occurs when the view has changed.

INotifyPropertyChanged.PropertyChanged

Se produit en cas de modification d'une valeur de propriété.Occurs when a property value changes.

Méthodes d’extension

Cast<TResult>(IEnumerable)

Effectue un cast des éléments d'un IEnumerable vers le type spécifié.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtre les éléments d'un IEnumerable en fonction du type spécifié.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Active la parallélisation d'une requête.Enables parallelization of a query.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

S’applique à