C# WPF如何引用作为图像资源添加的图像?

C# WPF如何引用作为图像资源添加的图像?,c#,.net,wpf,image,C#,.net,Wpf,Image,我有一个WPF应用程序,其中我将图像作为资源添加到项目中(而不是从项目设置中添加,如第二个答案所做的),因此它们位于一个文件夹下。我在xaml中这样使用它们: <Image Width="32" Height="32" Source="/Images/Effect.png" /> 当我构建这个应用程序时,只有依赖DLL和应用程序本身被放入Debug/Release文件夹。位于项目内的图标以及实际文件夹和文件位于项目文件夹内。这些不会复制到Debug/Release中 我可以在任

我有一个WPF应用程序,其中我将图像作为资源添加到项目中(而不是从项目设置中添加,如第二个答案所做的),因此它们位于一个文件夹下。我在xaml中这样使用它们:

<Image Width="32" Height="32" Source="/Images/Effect.png" />

当我构建这个应用程序时,只有依赖DLL和应用程序本身被放入
Debug/Release
文件夹。位于项目内的图标以及实际文件夹和文件位于项目文件夹内。这些不会复制到
Debug/Release

我可以在任何地方运行这个应用程序,并且图像可以工作,所以它必须将相对路径转换为硬编码路径

如果是这样的话,我怎么才能把这些图像文件分发到其他机器上呢

我希望能够始终拥有与应用程序相关的图像,包括参考图像和磁盘图像


这是最好的方法还是有更好的方法?最后,我想轻松地将这些图像和应用程序分发到其他机器。

这些图像将作为资源编译到程序集中。它们不会从磁盘上的原始位置引用


这样指定
图像.Source
时,WPF会在当前程序集中查找适当的图像。您还可以引用驻留在被引用程序集中的图像(以及其他资源)。是关于WPF中的资源URI格式(称为“packURI”)的一些详细说明。

图像将作为资源编译到程序集中。它们不会从磁盘上的原始位置引用


这样指定
图像.Source
时,WPF会在当前程序集中查找适当的图像。您还可以引用驻留在被引用程序集中的图像(以及其他资源)。是关于WPF中的资源URI格式(称为“包URI”)的一些详细说明。

图像不是正确编译成二进制文件吗?是吗?我如何验证这一点?你可能是对的,我重命名了Images文件夹,应用程序仍然可以运行。但是如果图像被编译成exe,那么为什么我会遇到这个问题?图像不是被正确地编译成二进制吗?是的?我如何验证这一点?你可能是对的,我重命名了Images文件夹,应用程序仍然可以运行。但是如果图像被编译成exe,那么为什么我会遇到这个问题?