如何轻松处理表格
How to easily dispose forms
我想知道是否有什么方法可以自动处理 winforms。我的项目很大,大约有 6 种形式。我遇到过各种各样的错误,它们都导致我无法处理 GDI+ 对象。我已将 Dispose()
行添加到我的所有表单关闭事件中。如果没有办法自动处理表格,是否有任何其他方法可以阻止这些错误。
到目前为止我遇到的所有错误都是
- 参数无效
- 堆栈溢出
- 无法创建window句柄
可能还有更多我不记得了,请结束这个长达一个月的噩梦。
编辑
最新的错误出现在子设计器中 Form1 的子窗体中。在第一行,它抛出
Error creating window handle
堆栈跟踪只是
System.Windows.Forms.NativeWindow.Create(Parameters tp)
通常通过单击 X
按钮关闭表单应该将表单对象与其所有子对象一起处置,因为表单是父容器,因此当调用它的处置时,它将依次调用它的所有子对象处置。
但这取决于您在表单关闭事件中的具体操作。我看到很多人在 FormClosing
活动上做 this.hide()
。这意味着,你实际上并不是 closing/disposing 表格。
我想知道是否有什么方法可以自动处理 winforms。我的项目很大,大约有 6 种形式。我遇到过各种各样的错误,它们都导致我无法处理 GDI+ 对象。我已将 Dispose()
行添加到我的所有表单关闭事件中。如果没有办法自动处理表格,是否有任何其他方法可以阻止这些错误。
到目前为止我遇到的所有错误都是
- 参数无效
- 堆栈溢出
- 无法创建window句柄
可能还有更多我不记得了,请结束这个长达一个月的噩梦。
编辑
最新的错误出现在子设计器中 Form1 的子窗体中。在第一行,它抛出
Error creating window handle
堆栈跟踪只是
System.Windows.Forms.NativeWindow.Create(Parameters tp)
通常通过单击 X
按钮关闭表单应该将表单对象与其所有子对象一起处置,因为表单是父容器,因此当调用它的处置时,它将依次调用它的所有子对象处置。
但这取决于您在表单关闭事件中的具体操作。我看到很多人在 FormClosing
活动上做 this.hide()
。这意味着,你实际上并不是 closing/disposing 表格。