[英]c#, Controls in panel to be disposed
好的,这里有一个情况:
1)我有一个名为“panel1”的Panel,它由一个UserControl组成。
2)如果我使用此行编写“panel1.dispose();”。 此面板1中的UserControl也将被处置吗?
是。
处置WinForms控件也将处理其所有子控件。
你可以在源代码中看到这个:
ControlCollection controlsCollection = (ControlCollection)Properties.GetObject(PropControlsCollection);
if (controlsCollection != null) {
// PERFNOTE: This is more efficient than using Foreach. Foreach
// forces the creation of an array subset enum each time we
// enumerate
for(int i = 0; i < controlsCollection.Count; i++) {
Control ctl = controlsCollection[i];
ctl.parent = null;
ctl.Dispose();
}
Properties.SetObject(PropControlsCollection, null);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.