C#2.0实现ICollection和ICollection的问题,高手帮忙~分不够可以再加~!~在线等~
纷享刘晨 2007-03-22 12:18:20 1、想要模拟实现TreeNodeCollection,查看了一下元数据,TreeNodeCollection继承自IList, ICollection, IEnumerable。其中有实现方法
public virtual int Add(TreeNode node);
自己写的类,同样继承自IList, ICollection, IEnumerable,但是在实现public int Add方法时,IDE提示,必须使用public int Add(object item) object当作参数,而无法使用自定义类型,比如UnitNode[例:public int Add(UnitNode item)]。我也看了.net提供的其他的几个实现了IList, ICollection, IEnumerable的类,都是用的是定义的类型,比如TabPageCollection,也继承自IList, ICollection, IEnumerable,但是查看元数据的时候,根本没有实现int Add(object item)。。所以就不明白了。。希望高手指点一下,如何在继承自IList, ICollection, IEnumerable三个接口时候,实现Add方法添加自定义的类型。。
2、在实现ICollection<T>的时候,用什么做数据集呢?ArrayList不支持范型,List<T>缺少IsReadOnly这个属性。。请问在用List<T>的时候,如何得到IsReadOnly这个属性呢?同样的还有IsFixedSize,SyncRoot和IsSynchronized也不知道如何实现。另外,还可以用别的时么代替List<T>么?