码迷,mamicode.com
首页 > Windows程序 > 详细

WPF BitmapImage 占用资源无法释放、无法删除问题

时间:2018-08-07 00:32:20      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:通过   方案   ini   显示   stat   return   ams   back   apc   

原文:WPF BitmapImage 占用资源无法释放、无法删除问题

使用Image控件显示图片后,虽然自己释放了图片资源,Image.Source =null 了一下,但是图片实际没有释放。
解决方案:修改加载方式~
        public static BitmapImage GetImage(string imagePath)
        {
            BitmapImage bitmap = new BitmapImage();
            if (File.Exists(imagePath))
            {
                bitmap.BeginInit();
                bitmap.CacheOption = BitmapCacheOption.OnLoad;
                using (Stream ms = new MemoryStream(File.ReadAllBytes(imagePath)))
                {
                    bitmap.StreamSource = ms;
                    bitmap.EndInit();
                    bitmap.Freeze();
                }
            }
            return bitmap;
        }
  //使用时直接通过调用此方法获得Image后立马释放掉资源
       ImageBrush berriesBrush = new ImageBrush();   
       berriesBrush.ImageSource = GetImage(path); //path为图片的路径        
       this.Background = berriesBrush;

WPF BitmapImage 占用资源无法释放、无法删除问题

标签:通过   方案   ini   显示   stat   return   ams   back   apc   

原文地址:https://www.cnblogs.com/lonelyxmas/p/9434131.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!