我已经使用using
指令创建了我的选项表单的新实例,因此当它完成后它会自动处理。在关闭表单之前是否需要处理表单上动态创建的控件,或者当我拨打this.Close()
时是否会自动处理这些控件?在退出表单之前是否需要处理动态创建的控件?
回答
通常不,所有控件都是动态创建的。通常在InitializeComponent()方法中,当代码出现在其他地方时,它不会有根本的不同。动态删除控件是什么可以让你陷入困境。
控件在处理父对象时会自动处理。所以只要你通过它的Collection属性将它们添加到它们的父代,那么你不需要额外的代码来处理。该触发器将关闭用Show()方法显示的窗体的窗口,在您的代码中使用语句显示与ShowDialog()一起显示的窗体。
你可以使用任务管理器检查你是否正确。添加USER Objects
列与查看+选择列(右键单击Windows 8中的列表视图标题)。柜台非常可靠。反复创建和关闭表单不得不不断增加显示的值。
泄漏USER对象是Winforms中非常常见的错误,垃圾收集器不会让您摆脱困境。始终是很警惕您的代码中的任何ControlCollection.Clear()或Remove/At()语句。
您应该确保删除了您可能已添加到动态添加的控件的任何事件处理程序。 –
一般不会。同样的故事,InitializeComponent()也添加了事件处理程序,不必明确删除。事件处理程序在Form对象和控件之间创建循环依赖关系,但它们不会残留GC。 –
谢谢。我在任务管理器中添加了该列,当我打开“选项”窗体并在关闭它时降低到其原始值时,此列就会增加。很好的答案。 – Abluescarab
- 1. 处理动态创建的控件?
- 2. 这是否需要动态表单?
- 3. 在创建表条目之前处理表单数据
- 4. 在asp.net中处理动态创建的控件的事件
- 5. 我是否需要创建2个表单来集成付款处理API?
- 6. 需要动态创建一个XSD文件的HTML表单
- 7. 处理动态创建的表单的关闭事件
- 8. 使用D3D,在退出我的过程之前是否需要调用release?
- 9. 需要查询的是动态创建
- 10. 使用IsolatedStorage,创建它之前是否需要检查目录是否存在?
- 11. 是否总是需要创建Dim表?
- 12. 动态创建的ActiveX控件的事件处理
- 13. 如何使用动态创建的控件处理事件?
- 14. 表单处理代码是否需要抽象? (Zend_Form的)
- 15. 在调用getResource()之前,我是否需要在getClassLoader()上处理null
- 16. 需要帮助就在PowerShell中创建动态表单
- 17. 在JQuery中动态创建单选按钮的事件处理
- 18. 我是否需要区分动态创建的复选框?
- 19. .NET开发动态创建控件需要自己的方法
- 20. HTML5中隐藏表单控件的处理是否合理?
- 21. 我是否需要为我的关系表创建代理键?
- 22. 如何在ASP.NET MVC 3中创建和处理动态表单?
- 23. 在处理HttpClient之前是否需要等待异步方法才能完成?
- 24. 事件处理程序动态创建的控制
- 25. 动态创建脚本时是否还需要“script.type ='text/javascript”?
- 26. 在asp.net动态控件创建,事件处理和控制属性
- 27. 在退出之前在node.js中清理
- 28. 是否需要在发送任何输出之前调用http_response_code?
- 29. 处理动态控件
- 30. 在Java中处理事件:它是否需要空的事件处理程序
只要他们有一个父集(他们应该有),处置是自动的。 –