public void InsertRange(int index, Cell[] cells) { if (cells == null) { throw new System.ArgumentNullException("Cell[] is null"); } if (index < 0) { throw new IndexOutOfRangeException(); } if (index >= this.Count) { this.AddRange(cells); } else { for (int i=cells.Length-1; i>=0; i--) { this.Insert(index, cells[i]); } } }