INotifyCollectionChanged Interfaccia

Definizione

Notifica ai listener le modifiche dinamiche, ad esempio l'eventuale aggiunta e rimozione di un elemento o la cancellazione dell'intero elenco.Notifies listeners of dynamic changes, such as when an item is added and removed or the whole list is cleared.

public interface class INotifyCollectionChanged
public interface INotifyCollectionChanged
type INotifyCollectionChanged = interface
Public Interface INotifyCollectionChanged
Derivato

Commenti

È possibile enumerare qualsiasi raccolta che implementi l' IEnumerable interfaccia.You can enumerate over any collection that implements the IEnumerable interface. Tuttavia, per configurare i binding dinamici in modo che gli inserimenti o le eliminazioni nella raccolta aggiornino automaticamente l'interfaccia utente, la raccolta deve implementare l' INotifyCollectionChanged interfaccia.However, to set up dynamic bindings so that insertions or deletions in the collection update the UI automatically, the collection must implement the INotifyCollectionChanged interface. Questa interfaccia espone l' CollectionChanged evento che deve essere generato ogni volta che viene modificata la raccolta sottostante.This interface exposes the CollectionChanged event that must be raised whenever the underlying collection changes.

WPF fornisce la ObservableCollection<T> classe, che è un'implementazione incorporata di una raccolta di dati che espone l' INotifyCollectionChanged interfaccia.WPF provides the ObservableCollection<T> class, which is a built-in implementation of a data collection that exposes the INotifyCollectionChanged interface. Per un esempio, vedere procedura: creare ed eseguire l'associazione a un oggetto ObservableCollection.For an example, see How to: Create and Bind to an ObservableCollection.

I singoli oggetti dati all'interno della raccolta devono soddisfare i requisiti descritti in Cenni preliminari sulle origini di associazione.The individual data objects within the collection must satisfy the requirements described in the Binding Sources Overview.

Prima di implementare una raccolta personalizzata, prendere ObservableCollection<T> in considerazione l'uso di o di una delle classi di raccolte esistenti, ad esempio List<T> , Collection<T> e BindingList<T> , tra molte altre.Before implementing your own collection, consider using ObservableCollection<T> or one of the existing collection classes, such as List<T>, Collection<T>, and BindingList<T>, among many others.

Se si dispone di uno scenario avanzato e si desidera implementare una raccolta personalizzata, è consigliabile utilizzare IList , che fornisce una raccolta non generica di oggetti a cui è possibile accedere singolarmente in base all'indice e offre le migliori prestazioni.If you have an advanced scenario and want to implement your own collection, consider using IList, which provides a non-generic collection of objects that can be individually accessed by index and provides the best performance.

Eventi

CollectionChanged

Si verifica quando viene modificata la raccolta.Occurs when the collection changes.

Si applica a