public class YourClassCollection : CollectionBase
{
public YourClassCollection()
{
}
public void Add(YourClass item)
{
List.Add(item);
} public void Remove(int index)
{
if (index > Count - 1 || index < 0)
{
throw( new Exception(String.Format("ͼɾڵԪλ:{0}", index)));
}
else
{
List.RemoveAt(index);
}
} public YourClass this[int index]
{
get
{
return (YourClass)List[index];
}
set
{
List[index] = value;
}
}
}
{
public YourClassCollection()
{
}
public void Add(YourClass item)
{
List.Add(item);
} public void Remove(int index)
{
if (index > Count - 1 || index < 0)
{
throw( new Exception(String.Format("ͼɾڵԪλ:{0}", index)));
}
else
{
List.RemoveAt(index);
}
} public YourClass this[int index]
{
get
{
return (YourClass)List[index];
}
set
{
List[index] = value;
}
}
}
class MyItem
{
private SomeCollection values; //SomeCollection含有索引器属性
public object Values[int indexer]
{
get {
return values[indexer];
}
set {
values[indexer]=(SomeCollection)value;
}
}
}
sc[0] = "1";MyItem item = new MyItem();
item.Values = sc;