试图从程序集中加载png

时间:2014-02-03 21:46:26

标签: c# wpf

我正在尝试使用带有静态方法的辅助类编写帮助程序集,该方法从资源加载Image。

这是代码

        public static BitmapImage GetImageFromResource(Assembly assembly, string file)
       {
        BitmapImage src = new BitmapImage();
        src.BeginInit();
        src.UriSource = new Uri(@"pack://application:,,,/" + assembly.GetName().Name + @";component/" + file, UriKind.Absolute);
        src.CacheOption = BitmapCacheOption.OnLoad;
        src.EndInit();

        return src;
       }

我试图从一个不同的程序集中调用它,该程序集具有构建操作作为资源的png文件(还尝试过,嵌入式资源和内容)

我收到以下错误

Additional information: Cannot locate resource 'coffee.png'.

我做错了什么?此外,C是大写的,但不知何故在错误消息中,它似乎正在尝试找到coffee.png而不是Coffee.png。

有人知道我在这里失踪了什么吗?

1 个答案:

答案 0 :(得分:2)

确保您要加载的程序集具有更新的dll。尝试在rebuild文件class library上执行image。你有什么应该工作。只有问题image才真正出现在dll中。