如何判断集合何时被编辑?

时间:2010-07-22 16:16:45

标签: c# winforms .net-3.5

我有一个名为Items的公共属性,它是一个List。我想告诉它什么时候被改变了。我怎么能这样做?

例如,如果调用了Items.Add,我希望能够调用UpdateInnerList。

我该怎么做?

3 个答案:

答案 0 :(得分:5)

你能使用ObservableCollection吗?

http://msdn.microsoft.com/en-us/library/ms668604.aspx

答案 1 :(得分:2)

如何创建List子类并重写Add方法?

void Main()
{
    var x=new MySpecialList<string>();
    x.Add("hello");
}

class MySpecialList<T>:List<T>
{
    public new void Add(T item)
    {
        //special action here
        Console.WriteLine("added "+item);
        base.Add(item);
    }
}

答案 2 :(得分:2)

尝试ObservableCollection

它支持CollectionChanged事件,这应该是您所需要的。