1

我尝试使用此代码在拆分容器中处理控件。

 foreach (Control c in splitContainerMain.Panel2.Controls) 
 { 
     c.Dispose(); 
 }

但问题是拆分容器包含两个控件并且获取计数为两个。但我尝试使用此代码进行处置,然后一个控件成功处置,但第二个控件无法处置。

4

1 回答 1

2

我不认为你应该在这种情况下使用 foreach 因为控件集合可能会随着项目的处置而缩小。

我认为你会更好如下:

 for (int nI = splitContainerMain.Panel2.Controls.Count - 1; nI >= 0; nI--) 
 { 
     splitContainerMain.Panel2.Controls[nI].Dispose();
 }
于 2011-11-24T19:47:39.370 回答