Je jetais un coup d'oeil au code ObservableCollection (grâce à l'awsome .NET Reflector) et j'ai été surpris de constater que les méthodes Add et Remove ne sont pas remplacées. Comment alors ObservableCollection déclenche-t-il l'événement PropertyChanged ou CollectionChanged pour notifier quand quelque chose est ajouté ou supprimé?Comment fonctionne ObservableCollection?
0
A
Répondre
2
Il remplace un groupe de méthodes protégées de la classe de base de la collection <T>, par ex. InsertItem (int index, point T), RemoveItem (int index), etc.
Ces overrides soulèvent spécifiquement les événements:
protected override void InsertItem(int index, T item)
{
this.CheckReentrancy();
base.InsertItem(index, item);
this.OnPropertyChanged("Count");
this.OnPropertyChanged("Item[]");
this.OnCollectionChanged(NotifyCollectionChangedAction.Add, item, index);
}
Questions connexes
- 1. ObservableCollection
- 2. Comment paginer une ObservableCollection?
- 3. ObservableCollection DataGrid
- 4. INotifyPropertyChanged ne fonctionne pas sur la propriété ObservableCollection
- 5. Comment convertir IEnumerable en ObservableCollection?
- 6. Manipulation ObservableCollection CollectionChanged événement
- 7. Custom ObservableCollection
- 8. Tutoriel ObservableCollection?
- 9. Linq et ObservableCollection
- 10. Sortable ObservableCollection dans Silverlight
- 11. WPF, ObservableCollection et listbox
- 12. manquant ObservableCollection (T)
- 13. ObservableCollection et Item PropertyChanged
- 14. Liaison ObservableCollection <Foo> à ObservableCollection <object>
- 15. Union deux Listes ObservableCollection
- 16. WPF ObservableCollection dans xaml
- 17. boucle Foreach par ObservableCollection
- 18. Comment lier une vue avec plusieurs ObservableCollection
- 19. Comment hériter de ObservableCollection dans Managed C++
- 20. WPF ListView à databinding ObservableCollection
- 21. ObservableCollection de contrôles winform
- 22. Intéressé ObservableCollection + NotifyPropertyChanged
- 23. ObservableCollection et CollectionChanged Evénement
- 24. Implémentation de ObservableCollection
- 25. ObservableCollection auto-index
- 26. Performance observableCollection Databinding
- 27. ObservableCollection -> Listbox
- 28. Comportement du constructeur ObservableCollection (IEnumerable)
- 29. ObservableCollection à clé dans Silverlight
- 30. ObservableCollection découper en utilisant lambda
DUH! Merci. J'ai remarqué que Collections.InsertItem a été substitué mais j'ai échoué à vérifier que la méthode base.Add a appelé la méthode InsertItem virtuelle. – Fragilerus