CollectionChanged sample

前端 未结 2 1770
暖寄归人
暖寄归人 2020-12-19 11:48

Can someone point to an example where CollectionChanged is implemented. I am using wpf mvvm light. I tried to google, didn\'t find anything good enough.

2条回答
  •  悲&欢浪女
    2020-12-19 12:49

    public ObservableCollection Names { get; set; }
    
    public ViewModel()
    {
       names = new ObservableCollection();
       Names.CollectionChanged += this.OnCollectionChanged;
    }
    
    void OnCollectionChanged(object sender, NotifyCollectionChangedEventArgs e)
    {
       //Get the sender observable collection
       ObservableCollection obsSender = sender as ObservableCollection;
    
       List editedOrRemovedItems = new List();
       foreach(string newItem in e.NewItems)
       {
           editedOrRemovedItems.Add(newItem);
       }
    
       foreach(string oldItem in e.OldItems)
       {
           editedOrRemovedItems.Add(oldItem);
       }
    
       //Get the action which raised the collection changed event
       NotifyCollectionChangedAction action = e.Action;
    }
    

    For more information about the NotifyCollectionChangedEventArgs look here.

    EDIT: Because you need a list of added/removed items, I modified the sample code.

提交回复
热议问题