2015-10-16 71 views
0

我在为自己写一个小工具时遇到问题。 我想要一个Windows窗体,显示一个Web浏览器和多个动态添加的文本框和组合框组。 浏览器工作正常,我可以添加文本框等罚款,而不是将其添加到groupbox,而是对主面板。C#动态添加GroupBox在添加控件后似乎是空的

当试图将文本框添加到组框时,它适用于第一个组框,但其他每个组框都保持为空。

这是我(简化)代码看起来到目前为止:

 //generate controls e.g. 
     ComboBox dynamicComboBox = new ComboBox(); 
     dynamicComboBox.Name = "comboBox" + anzahlModule; 
     dynamicComboBox.DataSource = new BindingSource(this.getInhaltComboBox(), null); 
     dynamicComboBox.DisplayMember = "Value"; 
     dynamicComboBox.ValueMember = "Key"; 
     dynamicComboBox.Location = new System.Drawing.Point(153, Yloc + 25); 
     dynamicComboBox.TabIndex = tabReihenfolge + 2; 
     dynamicComboBox.SelectedIndexChanged += comboBox1_SelectedIndexChanged; 

     ...do for all the others... 


     //Get Interface and redraw 
     GroupBox dynamicGroup = new GroupBox(); 
     dynamicGroup.Text = dynamicLabel.Text; 
     dynamicGroup.Size = new System.Drawing.Size(600, 325); 
     dynamicGroup.Location = button1.Location; 
     dynamicGroup.Name = "dynamicGroupBox" + anzahlModule; 
     dynamicGroup.Visible = true; 

     dynamicGroup.Controls.Add(LabelComboBox); 
     dynamicGroup.Controls.Add(LabelTextBox); 
     dynamicGroup.Controls.Add(LabelTextBox2); 
     dynamicGroup.Controls.Add(LabelInhalt); 
     dynamicGroup.Controls.Add(LabelInhalt2); 
     dynamicGroup.Controls.Add(LabelPictures); 
     dynamicGroup.Controls.Add(LabelCheckBox); 
     dynamicGroup.Controls.Add(LabelCheckBox2); 
     dynamicGroup.Controls.Add(LabelLink); 
     dynamicGroup.Controls.Add(LabelLink2); 
     dynamicGroup.Controls.Add(dynamicTextBox); 
     dynamicGroup.Controls.Add(dynamicTextBox2); 
     dynamicGroup.Controls.Add(dynamicUeberschrift); 
     dynamicGroup.Controls.Add(dynamicUeberschrift2); 
     dynamicGroup.Controls.Add(dynamicComboBox); 
     dynamicGroup.Controls.Add(dynamicPictureBox); 
     dynamicGroup.Controls.Add(dynamicCheckBox); 
     dynamicGroup.Controls.Add(dynamicCheckBox2); 
     dynamicGroup.Controls.Add(dynamicLinkBox); 
     dynamicGroup.Controls.Add(dynamicLinkBox2); 
     panel1.Controls.Add(dynamicGroup); 

这个作品,如果我直接添加的东西PANEL1,但不能将其添加到groupboxes时。

有人可以通过给我一个关于问题可能在哪里的想法或者告诉我什么是错误的吗?

在此先感谢。

+1

如果你添加了许多具有相同“位置”值的'GroupBox' - 这将导致只显示第一个GroupBox –

+0

好吧,我想我可能不得不更好地解释这个问题。我有多个组合框都被显示。第一个是显示已添加到它的每个文本框,标签等。第二个显示,但似乎是空的。这将返回每个后面的组框,所以1是好的,2,3,4,5,...不是 –

回答

0

好吧,所以我发现我的错误,它实际上很简单,我太盲目了,看不到它:)我已经定位我的文本框等相对于我后来移动的按钮。这意味着我尝试显示例如一个只有600x325尺寸的组框中的点750/300处的标签,因此它不可见。 @Mikhail Neofitov感谢在同一位置使用多个盒子的提示,这导致了一个解决方案。