示例#1
0
 private void OnInputChanged(object sender, NotifyCollectionChangedEventArgs e)
 {
     switch (e.Action) {
         case NotifyCollectionChangedAction.Add:
             AddItems(e.NewItems<IDataObject>());
             break;
         case NotifyCollectionChangedAction.Remove:
             RemoveItems(e.OldItems<IDataObject>());
             break;
         case NotifyCollectionChangedAction.Reset:
             var currentItems = sender as ReadOnlyObservableCollection<IDataObject>;
             ClearOutput();
             if (currentItems == null) break;
             AddItems(currentItems);
             break;
         case NotifyCollectionChangedAction.Replace:
             RemoveItems(e.OldItems<IDataObject>());
             AddItems(e.NewItems<IDataObject>());
             break;
         default: break;
     }
 }