1

ToolStripMenuItem在我的一些项目中使用并使用 C# 运算符分配它new

ToolStripMenuItem someMenuItem = new ToolStripMenuItem("Some Item");

IDisposable我阅读了有关接口和using语句的 MSDN 文档( http://msdn.microsoft.com/en-us/library/yh598w02.aspx )。我仍然不清楚 ToolStripMenuItem 是否有任何底层的非托管资源。

Dispose(false)更准确地说,如果发生异常,我应该处理对方法的调用吗?

4

1 回答 1

0

ToolStripMenuItems 继承自 Component,后者实现了 IDisposable 接口。

使用using()ToolStripMenuItem 的语法不会真正起作用,因为您通常希望菜单项存在以供最终用户与之交互,并且using()语法会立即处理它。

我不清楚“发生一些异常”与处置 ToolStrip 项目有什么关系。您不必担心处理它,因为当托管表单关闭时它将被垃圾收集。

但请记住,从项目集合中删除 ToolStripMenuItem 不会释放它,在这种情况下,您需要自己调用 dispose 方法。

于 2013-05-15T16:52:06.847 回答