好的,这是一种情况:
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);
}

关于c# - C#,面板中要放置的控件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6926811/

10-10 08:49