从资源中加载图像并应用到Image.source上。

4
我正在使用的是 <\p>
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'"

我该如何使用图像资源来应用System.Windows.Controls.Image.Source属性?


我的图像变量'im'是System.windows.controls.image类型,资源图像文件'Resources.sharer'是System.Drawing.Bitmap类型。使用此资源快速将其添加到'im'的方法是什么? - Lightstar
请点击这里 - Clemens
clientimg = new BitmapImage(new Uri("pack://application:,,,/Resources/client.png")); ...以及 'resources/client.png',没有资源。 - Lightstar
可能是将BitmapImage转换为Bitmap,反之亦然的重复问题。 - Peter Duniho
1个回答

5

它使用资源吗?'smiley_stackpanel.PNG'不是本地文件吗? - Lightstar
对于添加的资源,请查看第二个链接中的SO链接。 - Amit
您IP地址为143.198.54.68,由于运营成本限制,当前对于免费用户的使用频率限制为每个IP每72小时10次对话,如需解除限制,请点击左下角设置图标按钮(手机用户先点击左上角菜单按钮)。 - Amit
是的,我正确地将图像文件添加到我的项目资源中。 - Lightstar
3
请注意,当您使用带有Uri参数的BitmapImage构造函数(如问题中所使用的)时,可以避免使用BeginInit/EndInit序列:var bi = new BitmapImage(new Uri(...)); - Clemens
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接