本文介绍了处理面板上的控件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好......

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


这篇关于处理面板上的控件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-03 23:30
查看更多