2010-11-23 3 views
1

Каков тип данных, который будет срабатывать при добавлении или удалении объекта из списка?Увольнение событий, когда объекты добавляются или удаляются из списка

ObservableCollection<T> почти подходит моя потребность, но проблема заключается в дополнение к CollectionChanged события (который все, что мне нужно), он также выстреливает PropertyChanged, что-то мне не нужно вообще. Тот факт, что тип объекта T требуется для наследования INotifyPropertyChanged, является помехой для меня, поскольку я не реализую класс T.

Есть ли такой тип данных в .Net 3.5?

ответ

2

ObservableCollectionнеINotifyPropertyChanged.

Если T INotifyPropertyChanged инвентарь, он будет пересылать PropertyChanged события.
Однако это не требуется.

EDIT: ObservableCollection не использует INotifyPropertyChanged на всех, за исключением того, чтобы уведомить изменения в Count и Item[] свойств самой коллекции.
Он даже не попытается переслать дочерние события PropertyChanged.

+0

Да, это правильно, но `T` требует` INotifyPropertyChanged` и * это * проблема. – Graviton 2010-11-23 14:39:06

0

Почему бы вам не свернуть собственный класс? Просто наследуйте System.Collections.ObjectModel.Collection и переопределите методы InsertItem, SetItem, RemoveItem и т. Д., Чтобы передать событие.

Смежные вопросы