public virtual ColumnHeader this [int index] { get { if (index < 0 || index >= list.Count) throw new ArgumentOutOfRangeException ("index"); return (ColumnHeader) list [index]; } }