zoukankan      html  css  js  c++  java
  • 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;

  • 相关阅读:
    课程设计第十九天
    课程设计第十天八
    课程设计第十七天
    程序设计第十六天
    课程设计第十五天
    一个完整的大作业
    数据结构化与保存
    爬取新闻列表
    用requests库和BeautifulSoup4库爬取新闻列表
    中文词频统计及词云制作
  • 原文地址:https://www.cnblogs.com/qiantao/p/9413811.html
Copyright © 2011-2022 走看看