public DataRowView this [int recordIndex] { get { if (recordIndex > rowCache.Length) throw new IndexOutOfRangeException ("There is no row at position: " + recordIndex + "."); return rowCache [recordIndex]; } }