believe that using WPF BitmapImage, are using code like this to solve the problem of the file cannot be deleted!
If you look at the simple description on MSDN, you can see a description like this:
If both Streamsource and UriSource are set, the Streamsource value is ignored.
If you want to close the stream after you create the BitmapImage, set the Cacheoption property to Bitmapcacheoption.onload. The default OnDemand cache option retains access to the stream until a bitmap is required and the garbage collector performs cleanup.
Static Class Apphelper
{
public static BitmapImage Getbitmapimage (string path)
{
BitmapImage bitmap = new BitmapImage ();
Bitmap. BeginInit ();
Image. cacheoption = Bitmapcacheoption.onload;
Bitmap. Streamsource = new MemoryStream (file.readallbytes (path));
Bitmap. EndInit ();
Bitmap. Freeze ();
return bitmap;
}
}
Article source http://www.cnblogs.com/nio-nio/archive/2011/05/11/2043622.html#undefined
Go WPF BitmapImage files are not released and memory leaks are a problem