public void SetVisible(int index) { ControlRow row = rows[index]; if (!row.invisible) { return; } row.invisible = false; foreach (Control c in row.controls) { c.Visible = true; } int size = row.rowSize; for (int i = index + 1; i < rows.Length; i++) { row = rows[i]; foreach (Control c in row.controls) { c.Location = new Point(c.Location.X, c.Location.Y + size); } } form.Height += size; }
public ControlRowManager(ControlRow[] rows, Form form) { this.form = form; this.rows = rows; int index = 0; foreach (ControlRow row in rows) names[row.rowName] = index++; }