2012-12-21 13 views
25

के दौरान गतिशील रूप से TableLayoutPanel में नियंत्रण जोड़ना मेरे पास एक टेबललेआउट पैनेल दो कॉलम और 0 पंक्तियों से शुरू होता है। मुझे क्या करना है, गतिशील रूप से एक पंक्ति जोड़ना और विभिन्न नियंत्रणों के साथ दोनों कॉलम भरना (यह पैनल होंगे)। Form1 में मैं TableLayout इस तरह से बनाने हूँ:रनटाइम

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

बाद में रनटाइम के दौरान मैं हो रही है कि कितने पंक्तियों मैं की आवश्यकता होगी, और अगर वे या तो एक कक्ष या कुछ लेबल से भर दिया जाएगा। यह हो सकता है कि एक ही पंक्ति छोड़ दिया पैनल, सही लेबल आदि हो जाएगा में ..

उत्तर

42

कुछ इस तरह का प्रयोग करें:

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

आप पंक्तियों और स्तंभों की संख्या को परिभाषित करने की जरूरत नहीं है, वे हो जाएगा स्वचालित रूप से जोड़ा गया।