问题描述
你好......
i想要从面板中删除所有控件...
i使用这个:
foreach(在面板中控制c。控制)
panel.Controls.Remove(c);
但是它不起作用......
- 并非所有控件都被删除...
thanx
hello...
i want to renove all controls from panel...
i use this:
foreach (Control c in panel.Controls)
panel.Controls.Remove(c);
but it''s doesn''t work...
-- not all controls are removed...
thanx
推荐答案
我怀疑问题是你正在迭代一个集合并且在迭代期间改变它是
。那不是个好主意。试试这个
代替:
ArrayList list = new ArrayList(panel.Controls);
foreach(列表中的控制c)
{
panel.Controls.Remove(c);
}
-
Jon Skeet - < sk *** @ pobox.com>
如果回复小组,请不要给我发邮件
I suspect the problem is that you''re iterating through a collection and
changing it during the iteration. That''s not a good idea. Try this
instead:
ArrayList list = new ArrayList (panel.Controls);
foreach (Control c in list)
{
panel.Controls.Remove(c);
}
--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet
If replying to the group, please do not mail me too
这篇关于处理面板上的控件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!