相对包URI不起作用

用户名

我的项目的Img文件夹中有几张图像,所有这些图像均设置为Build Action:Resource。

我曾经用相对URI引用所有这些图像,如下所示:

new Uri("Img/image.png", UriKind.Relative);

我不确定发生了什么变化,但是它突然停止工作并且找不到图像。我现在必须像这样引用它们:

new Uri("pack://application:,,,/MyApp;component/Img/image.png");

为了他们的工作。我不知道为什么相对路径突然停止工作。(相对路径在XAML中仍然有效)

克莱门斯

ResourcePack URI必须引用具有构建操作的图像文件

MSDN

资源文件被配置为MSBuild资源项目,并被编译为程序集。WPF支持数据包URI的构造,该数据包URI可以用于标识资源文件,这些资源文件可以编译为本地程序集,也可以编译为从本地程序集引用的程序集。

WPF会自动将前缀pack://application:,,,(或pack://application:,,,/)添加到XAML中的图像URI。当你写

<Image Source="/Img/image.png"/>

WPF自动将其转换为本地程序集URI

"pack://application:,,,/Img/image.png".

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章