2
我有一個XamDataGrid
,它綁定到一個可觀察集合。由於XamDataGrid
是可編輯的,因此可以添加/編輯/刪除記錄。我已實施CollectionChanged
& PropertyChanged
事件。ObservableCollection的CollectionChanged事件未觸發
的CollectionChanged
事件包含以下代碼:
if (e.Action == NotifyCollectionChangedAction.Remove || e.Action == NotifyCollectionChangedAction.Add)
{
if (e.OldItems != null)
{
// Detach the event handler from current instance;
foreach (BusinessTelephone oldItem in e.OldItems)
{
if (oldItem is INotifyPropertyChanged)
{
(oldItem as INotifyPropertyChanged).PropertyChanged -= new PropertyChangedEventHandler(PhoneDetails_PropertyChanged);
}
}
}
if (e.NewItems != null)
{
// Attach the event handler to the new instance;
foreach (BusinessTelephone newItem in e.NewItems)
{
if (newItem is INotifyPropertyChanged)
{
(newItem as INotifyPropertyChanged).PropertyChanged += new PropertyChangedEventHandler(PhoneDetails_PropertyChanged);
}
}
}
}
所有這一切工作正常。
我有一個奇怪的問題,下面給出。
當我在網格中添加一條記錄,並從電網刪除它,我通過收集
防爆循環從集合中移除的項目:PhoneDetailsCollection.Remove(項目);
現在,當我添加另一條記錄時,CollectionChanged
事件未被觸發。
我在這裏錯過了什麼嗎?任何幫助,高度讚賞...