//------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //------------------------------------------------------------------------------ /* */ namespace System.Web.UI.WebControls { using System; using System.Collections; /// /// Encapsulates the collection of objects within a control. /// public sealed class RepeaterItemCollection : ICollection { private ArrayList items; /// /// Initializes a new instance of /// the class with the specified items. /// public RepeaterItemCollection(ArrayList items) { this.items = items; } /// /// Gets the item count of the collection. /// public int Count { get { return items.Count; } } /// /// Gets a value indicating whether the collection is read-only. /// public bool IsReadOnly { get { return false; } } /// /// Gets a value indicating whether access to the collection is synchronized /// (thread-safe). /// public bool IsSynchronized { get { return false; } } /// /// Gets the object that can be used to synchronize access to the collection. In /// this case, it is the collection itself. /// public object SyncRoot { get { return this; } } /// /// Gets a referenced by the specified ordinal index value in /// the collection. /// public RepeaterItem this[int index] { get { return(RepeaterItem)items[index]; } } /// /// Copies contents from the collection to a specified with a /// specified starting index. /// public void CopyTo(Array array, int index) { for (IEnumerator e = this.GetEnumerator(); e.MoveNext();) array.SetValue(e.Current, index++); } /// /// Returns an enumerator of all controls within the /// collection. /// public IEnumerator GetEnumerator() { return items.GetEnumerator(); } } }