作为 .NET 领域的新手并来自 Delphi 背景,我习惯于动态创建控件并在需要时手动释放它们。
在.net 中,被垃圾收集等等,我猜你不需要显式释放控件。
在我的情况下(WinForms),我动态地填充了一个带有面板的 flowLayoutPanel,其中包含一些其他控件。在某些情况下,我需要移除一些面板。我正在做的事情是
flowPanel.Controls.Remove(thePanelToRemove);
这具有所需的效果:面板从 flowLayoutPanel 中消失,但我没有得到的是:垃圾收集器是否删除了控件?这将是理想的行为,因为我将创建许多控件,当用户删除它们时将不再使用它们。如果没有,我如何确定控件被释放?类似的东西(伪代码)
flowPanel.Controls.Remove(thePanelToRemove);
thePanelToRemove.Free();
或类似的?