class Customer{ private string m_strName; public string Name { get { return m_strName; } set { m_strName = value; } } public Customer() { } public Customer(string Name) { m_strName = Name; }}/// /// This is a collection of Customer class/// class Customers : CollectionBase{ public int Add(Customer item) { return List.Add(item); } public void Remove(Customer item) { List.Remove(item); } public bool Contains(Customer item) { return List.Contains(item); } public int IndexOf(Customer item) { return List.IndexOf(item); } public void CopyTo(Customer[] array, int index) { List.CopyTo(array, index); } public Customer this[int index] { get { return (Customer)List[index]; } set { List[index] = value; } }}// How to use this Collection of classCustomer a1 = new Customer("Raj");Customer a2 = new Customer("Vivek");Customer a3 = new Customer("Parvin");Customer a4 = new Customer("Taware");Customers a = new Customers();a.Add(a1);a.Add(a2);a.Add(a3);a.Add(a4);for(int i =0 ;i< a.Count;i++){ MessageBox.Show(a[i].Name);}