設計時誤添加大量控件,或需重置窗體佈局,逐個刪除極其繁瑣。
Form1.cs)。Form1.cs)。// 遞歸清空容器及其子控件
private void ClearControls(Control parent) {
while (parent.Controls.Count > 0) {
Control ctrl = parent.Controls[0];
parent.Controls.Remove(ctrl);
ctrl.Dispose(); // 釋放非托管資源
}
}
// 調用
ClearControls(this); // 清空整個 Form
注意:僅適用於運行時動態生成的控件,設計時拖放的控件會在 InitializeComponent() 中重新創建,清空無效。
Form1.Designer.cs,刪除 InitializeComponent 中相關控件初始化代碼(高風險,需熟悉 Designer 代碼結構)。