vb.net - 处理表单是否清理了所有元素?

时间:2013-10-08 18:27:54

标签: vb.net memory-management dispose

如果我使用.dispose()关闭vb.net中的表单,我是否需要担心清理表单内部创建的任何元素(如addHandler等)或者处理清理所有内容我吗?

感谢。

1 个答案:

答案 0 :(得分:2)

关闭表单(或在其上调用Dispose())将清除该表单中的所有组件。这意味着添加到表单(或其控件,递归)的任何控件都将自动清理。

表单中控件的事件处理程序将被清除。

话虽这么说,但这不会清理订阅不属于表单的对象的事件处理程序。如果您使用AddHandler将事件处理程序添加到表单之外的类型,那么在覆盖Form.Dispose(Boolean)的范围内使用RemoveHandler是一种很好的做法删除此订阅。