使用wpf参考存储在外部dll中的图像

时间:2010-02-16 09:47:37

标签: c# wpf image dll png

我有一个wpf应用程序和一个类库(dll)项目。在我的DLL中,我有一个图像文件夹,其中一些.png文件设置为资源。

我想使用wpf主应用程序引用和显示图像。

有什么想法吗?我希望在xaml中执行此操作,而不是在可能的情况下执行代码。

钽, 太

4 个答案:

答案 0 :(得分:58)

假设您从WPF应用程序引用类库,您可以使用以下XAML在WPF应用程序中引用和显示该图像:

<Image Source="/ClassLibraryName;Component/images/myimage.png"/>

这里重要的是“ClassLibraryName”,它是类库的程序集名称。 “/images/myimage.png”是图像的路径。

您可以找到有关WPF包URI here的更多信息。

答案 1 :(得分:3)

我已经在下面使用但仍然没有工作。

<Image Source="/ClassLibraryName;Component/images/myimage.png"/>

我改变了#34; Build Action&#34;到&#34;资源&#34;但仍然没有工作。

最后,在清理解决方案并重建所有之后,它工作了!!!

设置:Microsoft Visual Studio Enterprise 2015,Windows 10 Pro,C#

答案 2 :(得分:1)

这对我不起作用:

<Image Source="/ClassLibraryName;Component/images/myimage.png"/>

但是确实如此:

<Image Source="pack://application:,,/ClassLibraryName;Component/images/myimage.png"/>

在此之前,我还进行了清理和重建,但是只有在添加了此添加位之后,才检索图像。

答案 3 :(得分:0)

首先在类库项目中为资源设置图像(实际图像)构建类型。 每当您要使用图像时,请将此类库参考提供给项目。 当您需要此图像时,将代码编码为“跟随wpf”。

<Image Source="pack://application:,,,/YOUR_DLL_FILE_NAME;Component/Images/Splashscreen.png" Stretch="Fill" />

图片是文件夹名称