在WPF中,想要使用Image控件,并将图片导入Image控件中,显示在界面上。因此可以通过BitmapImage作为Image控件的源。
因此,可以这样做:
BitmapImage bitmapImage = new BitmapImage(); //初始化BitmapImage类的一个新实例
Image image1 = new Image(); //定义一个Image控件
string strPath = "D:\\mImage.png";//图片所在的位置
bitmapImage.BeginInit(); //表示BitmapImage初始化开始
bitmapImage.UriSource = new Uri(strPath);//获取或设置BitmapImage的Uri源
bitmapImage.EndInit();//表示BitmapImage初始化结束
image1.Source = bitmapImage;//将image1控件的源指定为bitmapImage
按照上诉方法可以将图片显示到Image控件中,但是会存在问题,比如此时无法对显示的图片做其他操作,比如移动、重命名、删除等。就这好比windows操作系统中,无法对当前打开的word文档进行重命名、删除、移动等,因为资源正被占用。
解决方案:
将图片资源加载到缓存中