我很难过。我试图显示嵌入在另一个组件中的图像。我尝试了几件事,但到目前为止还没有任何工作。我确信我错过了一些非常简单的事情。
目前,Xaml看起来像这样:
<Image>
<Image.Source>
<BitmapImage UriSource="pack://application:,,,/Name.Of.Assembly;component/Resources/Icons/icon.png" />
</Image.Source>
</Image>
我最初的Xaml看起来像这样:
<Image Source="pack://application:,,,/Name.Of.Assembly;component/Resources/Icons/icon.png" />
我改变了它,希望它能有所作为。 (它没有。)
我正在尝试创建图像的项目中引用Name.Of.Assembly
。在程序集Name.Of.Assembly
中,有一个名为Resources的目录,它有一个名为Icons的子文件夹,其中包含image icon.png。 icon.png上的构建操作设置为嵌入式资源。
当我尝试跑步时,我得到XamlParseException
:
'Initialization of 'System.Windows.Media.Imaging.BitmapImage' threw an exception'
谁的内在例外是:
'Cannot locate resource 'resources/icons/icon.png'
它不喜欢在程序集中查找资源。为什么加载图像失败?我错过了什么?
答案 0 :(得分:0)
我找到了解决问题的方法:
第一个问题可能是我的构建操作设置为Embedded Resource
而不是Resource
。一旦我改变了这个,我就在包含资源的项目上运行了Build
,但我注意到没有什么不同。
根据Sean Nelson's suggestion,我做了一个Clean
,然后是项目的Rebuild
。
现在显示图像。