C#图像的相对路径无效

时间:2015-09-06 23:58:24

标签: c# wpf xaml

我已经查看了十几个不同的解决方案来实现这一点,而我似乎无法正确执行它。我有一个文件cup.png,我放在一个名为/ Images /的子文件夹中,位于我的项目文件夹下的" / Visual Studio 2013 \ Projects \ PointOfSale \ PointOfSale \ Images \ cup.png"。

IDE就像它可以找到文件一样,它显示在设计器视图和所有内容中,我可以编译,但是当我运行它时,我得到一个XamlParseException错误:

  

类型的第一次机会异常   ' System.Windows.Markup.XamlParseException'发生在   PresentationFramework.dll附加信息:'提供价值   ' System.Windows.Baml2006.TypeConverterMarkupExtension'扔了一个   。例外'行号' 7'和行位置' 14'。

我想念世界上的什么?我尝试了所有不同形式的这些尝试让它发挥作用:

<ImageBrush ImageSource="pack://application:,,,/PointOfSale;component/cup.png" Opacity="0.1"/>
<ImageBrush ImageSource="/cup.png" Opacity="0.1"/>
<ImageBrush ImageSource="/Images/cup.png" Opacity="0.1"/>
<ImageBrush ImageSource="/PointOfSale;component/Images/cup.png" Opacity="0.1"/>

1 个答案:

答案 0 :(得分:2)

您有几个选项(您对我的评论的回复没有直接回答)

  1. 您可以使用资源BuildAction将图片作为资源包含在内。
  2. 您可以使用内容"assembly;component/Resources/Images/cup.png"将图片作为一段内容添加。
  3. 如果选择第一个选项,则替换图像将需要替换整个程序集/可执行文件。您可以将图像引用为"/Resources/Images/darkaurora.png"(请注意,在字符串的开头需要正斜杠)。

    如果选择第二个选项,则替换图像将要求您仅替换图像文件。您可以将图像引用为Android Studio(请注意,在字符串的开头需要正斜杠)。