INTERFACE System.Collections.Generic.IList public class MgBatchPropertyCollectionEnumerator : IDisposable, System.Collections.Generic.IEnumerator { public MgBatchPropertyCollectionEnumerator(MgBatchPropertyCollection coll) { m_coll = coll; m_pos = -1; } public MgPropertyCollection Current { get { return m_coll.GetItem(m_pos); } } Object System.Collections.IEnumerator.Current { get { return m_coll.GetItem(m_pos); } } public bool MoveNext() { bool bOk = false; if (m_pos < m_coll.GetCount()-1) { m_pos++; bOk = true; } return bOk; } public void Reset() { m_pos = -1; } public void Dispose() { m_coll = null; } private MgBatchPropertyCollection m_coll; private int m_pos; } public System.Collections.Generic.IEnumerator GetEnumerator() { return new MgBatchPropertyCollectionEnumerator(this); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return new MgBatchPropertyCollectionEnumerator(this); } public int Count { get { return GetCount(); } } public bool IsReadOnly { get { return false; } } public void CopyTo(MgPropertyCollection[] array, int arrayIndex) { for (int i=0; i