我正在使用名爲tabDocuments的TabControl的窗體。我遇到了這段代碼,它刪除了TabControl中的所有頁面。刪除TabPage:處置或清除或兩者?
for (int i = tabDocuments.TabPages.Count - 1; i > -1; i--) {
tabDocuments.TabPages[i].Dispose();
}
tabDocuments.TabPages.Clear();
寫這段代碼的人已經離開了一段時間。我試圖理解爲什麼代碼在處理每個tabPages後調用Clear()(對我來說看起來不是必需的)。任何人都可以向我解釋爲什麼?或者調用Clear()額外?
謝謝,你在哪找到Control.Dispose的片段? – David 2009-11-18 16:47:05
反射器 - http://www.red-gate.com/products/reflector/ – 2009-11-18 16:49:02
@Xaero,雖然,你是正確的控制從它的父母本身。你只是通過拆解組件才知道這一點。沒有在該方法的公共文檔中的哪個位置說明它將自己從其父項中移除。該功能可以在該框架的未來版本中更改。我知道調用程序集可以針對特定版本的.NET框架。但是,根據公共文檔(即使不需要)調用該方法並不是更好的做法。 – rocka 2009-11-18 18:11:28