2010-03-08 4 views
1

Я привязал ObservableCollection к источнику данных dataGrid.ObservableCollection DataGrid

collectionChangedEvent наблюдаемой коллекции вызывается только при добавлении, удалении, удалении. Но не стрелять, когда мы обновляем запись.

как запустить событие для обновления тоже?

ответ

5

Если вы хотите получать уведомления о замене предмета (то есть вы хотите подписаться на это событие), вам не повезло с ObservableCollection<T>, потому что эта коллекция только срабатывает CollectionChangedEvent.
Действительно, если вы реализуете INotifyPropertyChanged, вы увидите изменения в элементах в представлении (WPF делает это автоматически), но если вам нужно выполнить ручные действия при изменении элемента, вы можете использовать BindingList<T>.

Для этого сценария я выложил пользовательский BindableCollection<T>, который реализует ObservableCollection<T> и добавляет OnItemChangedEvent. Я могу предоставить некоторый пример кода, если необходимо ...

+0

Можете ли вы предоставить несколько примеров кода? – Kiddo

3

Сборник не знает, когда запись будет изменена. Чтобы получить уведомление, когда это произойдет, запись должна быть выполнена. INotifyPropertyChanged

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