C# · 12月 29, 2021

c# – 将BitmapImage从Resources.resx分配给Image.Source?

我想将一个Bitmap Image从我的Resources.resx分配给一个图像.
之前我将.png图像保存到Resources.resx.此图像现在位于“/Resources/logo.png”中.

阅读几篇SO文章和其他文章后,我现在有了:

logoImage.source = new BitmapImage(new Uri(@”pack://application:,/Resources/logo.png”));

不幸的是它不工作
我不知道如何解决这个问题.

我试图用fullpath替换Pack-URI,它的工作原理,但是我想使用相对路径,以便在绝对路径不正确的不同机器上使用相同的源.

有人可以帮我吗?
提前致谢!

解决方法 为了使Uri工作,文件logo.png必须包含在您的VS项目中的名为“资源”的文件夹中(请参阅第一个图像),并且其构建操作必须设置为资源(请参阅第二个图像).

此资源文件夹与Resources.resx完全无关.您可以将其重命名为任何您喜欢的.