So vermeiden Sie das mehrfache Auslösen von ObservableCollection.CollectionChanged, wenn Sie alle Elemente ersetzen oder eine Auflistung von Elementen hinzufügen
ich habeObservableCollection<T>
Sammlung, und ich möchte alle Elemente durch eine neue Sammlung von Elementen ersetzen, könnte ich tun:
collection.Clear();
ODER:
collection.ClearItems();
(Übrigens, was ist der Unterschied zwischen diesen beiden Methoden?)
Ich könnte es auch gebrauchenforeach
zucollection.Add
eins nach dem anderen, aber dies wird mehrmals ausgelöst
Dasselbe gilt, wenn Sie eine Sammlung von Elementen hinzufügen.
BEARBEITEN:
Ich habe hier eine gute Bibliothek gefunden:Verbesserte ObservableCollection mit der Möglichkeit, Benachrichtigungen zu verzögern oder zu deaktivieren Es scheint aber, dass es Silverlight NICHT unterstützt.