--------------------------------------------------------------------------------------------------------------------
如果你正在创建一个表现和行为都类似于集合的类(自定义ListBox类),允许类的用户使用foreach语句对类似集合的类中的成员进行枚举将会是很方便的。那么真对一个类似于集合的类,我们应该怎么使用foreach 语句呢?
想要使用foreach语句,必须实现IEnumerable 接口。
这个接口只要求实现一个方法: GetEnumerator。这个方法必须返回一个实现了IEnumerator 接口的对象(注意: IEnumerable 和 IEnumerator 是不同的接口,请不要搞混了)。除此以外,我们需要返回的这个对象不仅实现了IEnumerator,而且知道如何枚举ListBox对象。
因此,实现IEnumerator接口的最好办法是在实现IEnumerable的类里创建一个嵌套的IEnumerator类(ListBoxEnumerator类)。
namespace Test
{
public class ListBox:IEnumerable
{
private