Visual Studio设计器可以找到资源图像,但不能在运行时找到

本文关键字:图像 但不能 运行时 资源 Studio Visual | 更新日期: 2023-09-27 18:16:24

我正在使用Visual Studio 2013和。net 4.5。

我有一个图像链接如下,与'',它显示在VS设计器视图,但不是在运行时。

<Image Grid.Column="1" Source="..''Resources''MyImage.bmp" Stretch="Uniform"/>

经过相当多的尝试后,我通过将''改为/符号使其工作,如下所示:

<Image Grid.Column="1" Source="../Resources/MyImage.bmp" Stretch="Uniform"/>

我只是好奇为什么设计师能够找到我的图像与反斜杠,而运行时没有,然后为什么正斜杠修复了这个问题。有人知道吗?由于

Visual Studio设计器可以找到资源图像,但不能在运行时找到

XAML

<Image Source="pack://application:,,,/yournamespace;component/Resources/MyImage.bmp"/>
如果我对你的问题理解正确的话。检查映像上的构建操作。

假设您的图像位于项目的Resources文件夹中。如果您对/Resources/MyImage.bmp之前的整个长字符串感到好奇,那是为了允许从其他程序集使用组件,并且是在xaml中定义图像的安全方式。"yournamespace"是你项目的命名空间。

http://msdn.microsoft.com/en-us/library/aa970069.aspx

在解决方案资源管理器中选择图像,将其Copy to Output Directory设置为Copy if Newer,并确保构建操作设置为Content

举例:<img src="'website'file_name.jpg" />

这是无效的,因为URL中不允许使用反斜杠,而必须使用反斜杠是逃出来的。因此,当您联机使用代码时,无法读取所有反斜杠。

正确的方法是这样写:

<img src="/website/file_name.jpg" />

希望有帮助!

相关文章: