如题:
foreach(Control ctl in this.Controls)
{
if(ctl is PictureBox)
{
 this.Controls.Remove(ctl);
}

}
共有13个PictureBox,为什么移出顺序是:7-3-2-1点击四次才移出完了??
谢谢回复!!!!!!!!!!!!!!!!

解决方案 »

  1.   


                for (int i = this.Controls.Count - 1; i >= 0; i--)
                {
                    if (Controls[i] is PictureBox)
                        Controls.RemoveAt(i);
                }
      

  2.   

    你在foreach內部改變了Controls集合,ctl的值不會是你預料的。用我樓上的代碼才行。
      

  3.   

    谢谢 !我一移出controls就变了,十分感谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!