在面板中的控件被处置
本文关键字:控件 | 更新日期: 2023-09-27 18:04:35
好的,这里有一个情况:
1)我有一个名为"panel1"的面板,由一个UserControl组成。
2)如果我用这行代码"panel1.dispose();"。这个panel1中的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);
}