2012-12-21 12 views
25

Ich habe ein TableLayoutPanel, das mit zwei Spalten und 0 Zeilen beginnt. Was ich tun muss, ist, eine Zeile dynamisch hinzuzufügen und beide Spalten mit verschiedenen Steuerelementen zu füllen (es werden Panels sein). In Form1 erschaffe ich das Tablelayout auf diese Weise:Hinzufügen von Steuerelementen zu TableLayoutPanel dynamisch während der Laufzeit

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); 

danach während der Laufzeit erhalte ich, wie viele Zeilen werde ich brauchen, und wenn sie entweder mit einem Gremium oder ein Etikett gefüllt werden. Es könnte, dass in der gleichen Zeile passieren Panel etc rechts Etikett übrig bleiben ..

Antwort

42

Verwendung so etwas wie diese:

Table.Controls.Add(new Label { Text = "Type:", Anchor = AnchorStyles.Left, AutoSize = true }, 0, 0); 
Table.Controls.Add(new ComboBox { Dock = DockStyle.Fill }, 0, 1); 

Sie brauchen keine Anzahl der Zeilen und Spalten zu definieren, sie werden automatisch hinzugefügt.

Verwandte Themen