2015-07-20 1 views
0

У меня есть динамические ярлыки и текстовые поля на одной панели. Я могу удалить панель. Нет проблем, но тогда я не знаю, как удалить Textboxes т.д.Ярлыки или текстовые поля на панели или 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

yes Я добавляю с помощью this.Controls.Add (текстовое поле) '. И как удалить панель и создать ее с такими же свойствами и? –

+1

'this' звучит как его форма. Добавьте код, в который вы добавляете панель и элементы управления (на ваш вопрос) – Sayse

ответ

0

Вы добавляете элементы управления в форме, а не на панели - что вы также добавить несколько раз

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

Once вы сделали это, когда вы удалите панель, вы также удалите ее дочерние элементы управления.

+1

Да, это так !!! Я просто сделал это сам с твоим комментарием :)) Спасибо –