|
■No26110 (ま さん) に返信
> ■No26109 (ま さん) に返信
> こっちは、delegate と Generic 使ったもの、2003 の C# では動くのかな?微妙?
解決してるので蛇足だけど、2003だと型指定されたCollectionを実装する場合はCollectionクラスを継承するのが簡単じゃないかな。
using System;
using System.Collections;
public class HogeCollection : CollectionBase
{
public HogeCollection()
{
}
public Hoge this[int index]
{
get
{
return (Hoge)List[index];
}
set
{
List[index] = value;
}
}
public int Add(Hoge hoge)
{
return List.Add(hoge);
}
public void AddRange(Hoge[] hoges)
{
foreach (Hoge hoge in hoges) Add(hoge);
}
public int IndexOf(Hoge hoge)
{
return List.IndexOf(hoge);
}
public void Insert(int index, Hoge hoge)
{
List.Insert(index, hoge);
}
public void Remove(Hoge hoge)
{
List.Remove(hoge);
}
public bool Contains(Hoge hoge)
{
return List.Contains(hoge);
}
protected override void OnInsertComplete(int index, object hoge)
{
base.OnInsertComplete(index, hoge);
}
protected override void OnRemoveComplete(int index, object hoge)
{
base.OnRemoveComplete(index, hoge);
}
}
|