public virtual void AddEntries(T[] entries) { ViewPanel.SuspendLayout(); ViewPanel.Controls.AddRange(entries); int childIndex = 0; //Add to the beginning of Controls but in reversed order for (int i = entries.Length - 1; i >= 0; i--) { ViewPanel.Controls.SetChildIndex(entries[i], childIndex); childIndex++; } ViewPanel.ResumeLayout(); }