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'interfaccia IEnumerable.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 il Interfaccia utenteUI, è necessario che la raccolta implementi l'interfaccia INotifyCollectionChanged.However, to set up dynamic bindings so that insertions or deletions in the collection update the Interfaccia utenteUI automatically, the collection must implement the INotifyCollectionChanged interface. Questa interfaccia espone l'evento CollectionChanged 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.

WPFWPF fornisce la classe ObservableCollection<T>, ovvero un'implementazione incorporata di una raccolta di dati che espone l'interfaccia INotifyCollectionChanged.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, provare a usare ObservableCollection<T> o una delle classi di raccolte esistenti, ad esempio List<T>, Collection<T>e BindingList<T>, tra molti altri.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, provare a 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

Vedi anche