0

我有以下内容:

<BitmapImage UriSource="{Binding resource}" />

其中,resource 是类中的字符串,用于保存图像的位置。这在资源是绝对路径时有效,但在路径是相对路径时无效。

我知道我必须使用pack URI。但是在这种情况下我该如何实现呢?

4

2 回答 2

1

以下是您可以在项目中使用图像的 3 种方法。

一个。直接将图片添加到项目中,右键图片,选择属性,设置Build Action -> Resource。这会将图像编译成程序集(exe/dll)

<Image Source="Grapes.png" Stretch="None"></Image>

如果您在项目中创建了一些文件夹说“图像”并将图像添加到该文件夹​​中,那么路径将是

<Image Source="Images\Grapes.png" Stretch="None"></Image>

湾。将图像直接添加到项目中,右键单击图像,选择属性并将构建操作 -> 内容和“复制到输出目录”设置为“始终复制”。这会将旁边的图像文件复制到创建 EXE 的文件夹中的 EXE。(bin\debug 或 bin\release)

<Image Source="Orange.png" Stretch="None"></Image>

如果您在项目中创建了一些文件夹说“图像”并将图像添加到该文件夹​​中,那么路径将是

<Image Source="Images\Orange.png" Stretch="None"></Image>

C。不要将图像添加到文件夹中。而是将图像直接复制到将创建 EXE 的文件夹中(bin\debug 或 bin\release)。当您运行应用程序时,siteoforigin 将等于您的可执行文件的位置。

<Image Source="pack://siteoforigin:,,,/Apple.png" Stretch="None"></Image>
于 2013-09-05T07:28:28.860 回答
0

尝试对包含图像位置的字符串使用包 URI

pack://siteoforigin:,,,/yourimagefilename.jpg
于 2013-09-05T07:08:54.717 回答