【问题标题】:Is it safe to dispose the Icon after calling Icon.ToBitmap()?调用 Icon.ToBitmap() 后释放 Icon 是否安全?
【发布时间】:2009-02-19 09:50:42
【问题描述】:

调用System.Drawing.Icon.ToBitmap()创建镜像后,处置原来的Icon是否安全?

【问题讨论】:

    标签: c# .net icons idisposable


    【解决方案1】:

    该方法将Icon 转换为新的Bitmap 对象,因此不会有从BitmapIcon 的引用。

    所以是的,处置Icon 是安全的。

    【讨论】:

      【解决方案2】:

      是的。 Icon.ToBitmap 将 Icon 绘制到一个新的 Bitmap 对象上,因此以后可以安全地释放它。

      编辑:
      查看 Reflector 中的 Icon.ToBitmap() 方法很有趣。我希望它是一个简单的 Graphics.DrawImage 或 Graphics.DrawIcon 调用,但它比这更复杂。只要有可能,该函数将对图标图像数据进行内存复制,但如果无法执行复制,它将恢复为 Graphics.DrawImage 或 Graphics.DrawIcon 调用。内存复制要快得多,这显然是原因,但这使得代码更难阅读。

      【讨论】:

        【解决方案3】:

        是的。 如果您不再需要该图标,并且将位图存储在某个地方,那就没问题了。

        【讨论】:

          猜你喜欢
          • 2018-03-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-04-09
          • 2012-02-02
          • 1970-01-01
          相关资源
          最近更新 更多