遇到两个问题,第一个实在 xaml 文件中,Image 中的 Source 引用路径找不到,
第二个是在 cs 文件中, URI 找不到。
分析一下:
从一个解决方案中分离出一部分作为单独的工程,编译为dll,如果在原来的解决方案中,生成可执行程序,不会有什么问题,但是分离之后,出现了资源文件找不到的问题。
根据广大网友提供的线索,解决方案如下:
1、之前xaml是这样写的
<Image Source="XXX;component/Resources/">
这里XXX代表可执行文件哪个命名空间,单独生成dll工程的时候,修改为该工程的命名空间,但是不行,图片不能够被加载出来;
怎么办呢,修改为这样
<Image Source="pack://application:,,,/Resources/">
还是不行,虽然在设计器中可以看到图片被加载,但是执行的时候却没有。
最后,还是感谢网友提供的思路,将两者结合:
<Image Source="pack://application:,,,XXX;component/Resources/">
即可。
2、cs文件中,之前是这样写的
URI uri = new URI("pack://application:,,,/Resources/");
不得行,运行时出现异常,找不到资源,试了很多方法,搞得郁闷的时候,广大网友又有了思路,还是结合管用,如下:
URI uri = new URI("pack://application:,,,XXX;component/Resources/");
get,搞定啦。
暂时,先这样,后期再系统总结一下资源这个东西吧。