2015-07-20 28 views
0

我在一个面板上有动态标签和文本框。 我可以删除面板。没有问题,但后来我也不知道如何删除文本框等面板或Winform上清除标签或文本框

enter image description here

,我希望我可以刷新或清除该面板让所有的标签和文本框将被删除..

 Label makeLabelC = new Label(); 
     makeLabelC.Width = 100; 
     makeLabelC.Font = new Font(makeLabelC.Font.Name, 8, FontStyle.Bold | FontStyle.Underline); 
     makeLabelC.Location = new Point(400, 100); 
     makeLabelC.Name = e.Node.Text; 
     makeLabelC.Text = e.Node.Text; 
     this.Controls.Add(makeLabelC); 
     this.Controls.Add(panel1); 

     TextBox textboxC = new TextBox(); 
     textboxC.Width = 100; 

     textboxC.Location = new Point(500, 100); 
     textboxC.Name = e.Node.Text + "lbl"; 
     textboxC.Text = "enter here"; 
     this.Controls.Add(textboxC); 
     this.Controls.Add(panel1); 


     for (int z = 0; z < n; z++) 
     { 
      Label makeLabel = new Label(); 
      makeLabel.Width = 100; 
      makeLabel.Location = new Point(400, 150 + 2 * z * makeLabel.Height); 
      makeLabel.Name = e.Node.Text; 
      makeLabel.Text = e.Node.Nodes[z].Text; 
      this.Controls.Add(makeLabel); 
      this.Controls.Add(panel1); 

      TextBox textbox = new TextBox(); 
      textbox.Width = 100; 
      textbox.Location = new Point(500, 150 + 2 * z * textbox.Height); 
      textbox.Name = e.Node.Text + "lbl"; 
      textbox.Text = "enter here"; 
      this.Controls.Add(textbox); 
      this.Controls.Add(panel1); 


     } 

    } 

有没有一种方式与面板如何做到这一点或其他解决方案? 我认为,该小组可以帮助我有...

感谢雅尼克

+0

如果您移除了一个面板,那么它的子控件也会被移除,您确定控件在面板上吗? – Sayse

+0

是的,我添加'this.Controls.Add(文本框)'。以及如何删除面板并使用相同的属性和和创建它? –

+1

'这听起来很喜欢它的形式。请在添加面板和控件的地方添加代码(针对您的问题) – Sayse

回答

0

您添加控件到窗体,而不是面板 - 你也多次添加

this.Controls.Add(panel1); // do this once 
panel1.Controls.Add(textbox); // add the controls to the panel 

一旦您已经完成了这项工作,当您移除面板时,您还将删除其子控件。

+1

是的,它!我只是在你自己的评论:)我自己做到了))谢谢 –