当前位置:  开发笔记 > 编程语言 > 正文

修改集合时运行代码(添加或删除项目)

如何解决《修改集合时运行代码(添加或删除项目)》经验,为你挑选了1个好方法。

我有一个包含对象列表的类.修改列表时,在类中运行某些代码的最佳方法是什么?

class MyManagerClass
{
    ArrayList list = new ArrayList(); // will likely be a different collection class
    private OnItemAddedToList(object o)
    {
        // how to call this?
    }

    private OnItemRemovedFromList(object o)
    {
        // how to call this?  
    }
}

Rune Grimsta.. 5

如果您正在编写自定义集合,则可以实现INotifyCollectionChangedINotifyPropertyChanged接口.它们添加了您可以订阅的事件,以便在以某种方式更改集合数据时通知侦听器.
这样做,您可以订阅集合外部代码中的事件.

或者,您可以使用ObservableCollection实现这两个接口的类.这两个INotifyCollectionChanged界面ObservableCollection仅在.Net Framework 3.0及更高版本中可用.

在.Net Framework 2.0上,您可以使用该IBindingList接口来获得相同的功能,但实现起来比INotifyCollectionChanged3.0中的接口更复杂



1> Rune Grimsta..:

如果您正在编写自定义集合,则可以实现INotifyCollectionChangedINotifyPropertyChanged接口.它们添加了您可以订阅的事件,以便在以某种方式更改集合数据时通知侦听器.
这样做,您可以订阅集合外部代码中的事件.

或者,您可以使用ObservableCollection实现这两个接口的类.这两个INotifyCollectionChanged界面ObservableCollection仅在.Net Framework 3.0及更高版本中可用.

在.Net Framework 2.0上,您可以使用该IBindingList接口来获得相同的功能,但实现起来比INotifyCollectionChanged3.0中的接口更复杂

推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有