2011-05-27 40 views
1

我有组合框中我想删除它所有的控制,我尝试清除控件动态

public void ClearPanels(GroupBox control) 
{ 

    foreach (Control p in control.Controls) 
    { 

     control.Controls.Remove(p); 


    } 

} 

但面板保持它,我在运行时创建控件的问题,并希望在运行时将其删除

+0

是有prefering超过'Control.ControlCollection.Clear()'回路中的原因是什么? – DarkSquirrel42 2011-05-27 22:33:37

回答

3

更好地使用本这一次清除所有控件不使用一个循环:

public void ClearPanels(GroupBox control) 
{ 
    control.Controls.Clear(); 
} 
+0

非常感谢,这是我第一次使用CLEAR – AMH 2011-05-27 22:38:37

+0

不客气。 – 2011-05-27 22:38:54

2

使用RemoteAt

while (control.Controls.Count > 0) 
{ 
    control.Controls.RemoveAt(0); 
} 

Clear

control.Controls.Clear();