-1

我需要BitmapImageusing语句中使用 a ,这怎么做?

using (BitmapImage bitmap = new BitmapImage())
{
    ...

我猜测这样做的方法是扩展,IDisposable但我以前从未这样做过。

提前致谢

4

2 回答 2

2

实现的原因IDisposable是当您不再需要引用该对象时释放该对象中的非托管资源。您不需要包装BitmapImage并实现,IDisposable因为没有任何与BitmapImage.

于 2012-12-18T20:27:58.693 回答
1

你不能这样做。BitmapImage是密封的,所以你不能从中获得。此外,我不知道您为什么要IDisposable在 .NET Framework 类中实现。您最多可以做一个包装类,其中包含您的BitmapImage, 和实现IDisposable.

例子:

class DisposableBitmapImageWrapper : IDisposable
{
    public BitmapImage Bitmap { get; private set; }

    public DisposableBitmapImageWrapper(BitmapImage bitmap)
    {
        Bitmap = bitmap;
    }

    public void Dispose()
    {
        //Do something with the BitmapImage
    }
}
于 2012-12-18T20:26:23.150 回答