来自DLL的C#图像无法加载

时间:2017-08-29 18:39:06

标签: c# wpf image dll resources

我正在编写一个包含多个类,模型等的小型API。我在很多项目中使用过。在这个小DLL中有一个About.xaml,它是一个用户控件。这个UC的图像看起来像这样:

<Image Source="pack://application:,,,/DeBy API;component/Resources/DBLogo200x200.png"/>

此图像URI引用标记为资源(未嵌入)的图像,该图像也位于Resources.resx(公共)中。

然后在我的应用程序中,我将此UC添加到ContentControl。一切正常。 UC中的文本和链接是可见的。但图像并没有出现。当我调试它时,VS17还说Image控件的Source属性为null。

这是我第一次尝试在DLL中使用图像资源。

有人可以解释一下我做错了吗?

感谢。

1 个答案:

答案 0 :(得分:0)

在程序集名称中使用空格会导致很多这样的麻烦。您可以使用&#x20在xaml中对其进行转义,但最好重命名DLL并从其名称中删除空格以避免将来出现任何问题。

正如bwoggie建议您应该查看Microsoft的命名准则:https://msdn.microsoft.com/en-us/library/ms229002(v=vs.100).aspx