关闭模态窗体时不调用它的方法 Dipose

本文关键字:方法 Dipose 调用 模态 窗体 | 更新日期: 2023-09-27 17:56:41

>我有两个表单:Form1和Form2。窗体 1 是主窗体。我在 Form1 上创建了一个按钮来显示 Form2。如果我像无模式窗体一样显示 Form2(使用方法 Show()),则在关闭它后立即调用其 Dispose 方法。但是,如果我像模态窗体一样显示 Form2(使用方法 ShowDialog()),则关闭它后不会调用其 Dispose 方法。仅在关闭 Form1(主窗体)并退出应用程序后调用它。

//code Dispose method of Form2
protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

注意:我使用调试来捕获 处置方法。

如何在关闭模态窗体时立即调用 Dispose()。

请解释一下。谢谢。

关闭模态窗体时不调用它的方法 Dipose

您必须在

.ShowDialog()之后立即在 Form1 中的代码中手动调用.Dispose()