c# - usuario - Agregar controles a TableLayoutPanel dinámicamente durante el tiempo de ejecución
cómo se agrega propiedades y eventos a los controles en un formulario web (1)
Tengo un TableLayoutPanel que comienza con dos columnas y 0 filas. Lo que tengo que hacer es agregar dinámicamente una fila y rellenar ambas columnas con diferentes controles (serán paneles). En Form1 estoy creando el TableLayout de esta manera:
TableLayoutPanel Table = new TableLayoutPanel();
Table.Location = new Point(10, 40);
Table.Size = new Size(620,100);
Table.AutoSize = true;
Table.Name = "Desk";
Table.ColumnCount = 2;
Table.RowCount = 0;
Table.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
Table.GrowStyle = System.Windows.Forms.TableLayoutPanelGrowStyle.AddRows;
this.Controls.Add(Table);
luego, durante el tiempo de ejecución, obtengo cuántas filas necesitaré, y si se llenarán con un Panel o alguna Etiqueta. Puede suceder que en la misma fila a la izquierda esté el Panel, la Etiqueta derecha, etc.
Usa algo como esto:
Table.Controls.Add(new Label { Text = "Type:", Anchor = AnchorStyles.Left, AutoSize = true }, 0, 0);
Table.Controls.Add(new ComboBox { Dock = DockStyle.Fill }, 0, 1);
No es necesario definir el número de filas y columnas, se agregarán automáticamente.