从资源加载图像并应用于Image.source

时间:2015-01-22 07:24:33

标签: c# wpf image resources

我正在使用

BitmapImage  sharerimg;
sharerimg = new BitmapImage(new Uri("F:/workspace/wpf/NetworkMFServer/NetworkMFServer/imageresources/sharer.png"));
Image im = new Image();
im.Source = sharerimg;

但我将图片添加到资源并编码此

Assembly assembly = Assembly.GetExecutingAssembly();
            string strBaseName = assembly.GetName().Name + ".Properties.Resources";
            ResourceManager rm = new ResourceManager(strBaseName, assembly);
Image im = new Image();
im=(Image)rm.GetObject("sharer");

然而这显示错误

  

“无法将'System.Drawing.Bitmap'强制转换为   'System.Windows.Controls.Image'“

如何使用image resouce来应用System.Windows.Controls.Image .Source属性?

1 个答案:

答案 0 :(得分:3)

根据MSDN的例子,你应该这样做 -

Image myImage3 = new Image();
BitmapImage bi3 = new BitmapImage();
bi3.BeginInit();
bi3.UriSource = new Uri("smiley_stackpanel.PNG", UriKind.Relative);
bi3.EndInit();
myImage3.Stretch = Stretch.Fill;
myImage3.Source = bi3;

https://msdn.microsoft.com/en-us/library/system.windows.controls.image.source(v=vs.110).aspx

Accessing embedded image and creating a System.Windows.Controls.Image