首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IDisposable Winform

IDisposable Winform
EN

Stack Overflow用户
提问于 2009-01-16 14:46:10
回答 3查看 1.1K关注 0票数 1

在Winform上实现IDisposable的最佳实践是什么?

我有一个扩展System.Windows.Forms.Form

  • The生成的designer.cs的对话框,该对话框已经包含虚拟处置(Bool)方法

  • 的实现,我的表单有一个手动添加的字段,该字段实现了IDisposable

理想情况下,我将能够连接到生成代码中的Dispos(bool)覆盖,以释放手动添加的IDisposable对象。关于如何正确地做到这一点,有什么建议吗?

谢谢。

史考特

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-01-16 16:01:27

您可以将该Dispose实现移出.designer.cs和.cs中。

票数 5
EN

Stack Overflow用户

发布于 2009-01-16 15:05:25

但是,您的字段需要是一个组件(实现IComponent接口或类似的东西)。是不是有点过火了?

也许你可以在处理事件上附加一个均衡器,然后把你的字段配置在那个平地里?

(或者只是将它们添加到Dispose方法中-我不认为这会是一个问题,因为afaik,Dispose方法中的代码不会重新生成.理想情况下,Dispose方法实现不应该在*.designer.cs类中. )。

票数 2
EN

Stack Overflow用户

发布于 2012-11-02 14:28:44

我在表单的designer.cs中发现的Dispose方法中取消注册任何事件

代码语言:javascript
复制
    protected override void Dispose(bool disposing)
    {
        if (disposing && (components != null))
        {
            components.Dispose();
        }
        _frmFind.RaiseFindEvent -= _frmFind_RaiseFindEvent;
        base.Dispose(disposing);
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/450596

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档