List <T>的C#OnAdd/OnRemove/OnModified事件.<some action>(objT)

hok*_*oka 2 .net c# events c#-4.0

我有一个属性,比如MyList,类型List<int>.

set属性的子句中,执行一些其他逻辑.

我想在修改List时执行相同的逻辑.

public class MyType
{
    public List<int> MyList
    {
        get { return _MyList; }
        set
        {
            listUpdate(); 
            _MyList = value; 
        }
    }
    private List<int> _MyList

    private void listUpdate()
    {
        // Do something... 
    }
}
Run Code Online (Sandbox Code Playgroud)

我知道我可以创建自己的类继承List<T>并覆盖所有修改它的方法,List但是想知道是否有人有更好的想法?

Dan*_*rth 8

是的,我有一个更好的主意.使用ObservableCollection<T>.
它完全是为了您的目的而创建的.您要订阅的活动是CollectionChanged.它被要求进行所有更改.