我不确切知道它是否是一个错误,但我一直得到运行时IOException错误说无法找到资源.
我在我的应用程序(c#,WPF)中加载一些图像在画布背景中取决于数据库状态.问题是,我无法加载LAST(字母排序)文件.我在文件夹中有15个图像.我可以首先加载14而没有问题.但最后一个抛出异常.
我100%肯定,我有文件夹中的图像(请参阅下面的!image-printscreen).我是怎么写的.14首先我可以加载没有任何问题,只有最后一个抛出异常.
这是WPF-c#中的错误还是我做错了什么?
什么是抛出异常的代码:
canvas_status.Background = new ImageBrush(new BitmapImage(new Uri(BaseUriHelper.GetBaseUri(this), @"Images\" + statusName + ".png")));
canvas_name.Background = new ImageBrush(new BitmapImage(new Uri(BaseUriHelper.GetBaseUri(this), @"Images\" + statusName + bulheadName + ".png")));
Run Code Online (Sandbox Code Playgroud)
错误:
IOException was unhalded
Cannot locate resource 'view/images/panel_uzavreno_d.png'.
Run Code Online (Sandbox Code Playgroud)
图像(更高分辨率点击图像鼠标右键,然后点击显示图像或类似的东西):

Rom*_*man 30
我遇到了类似的问题:IOException,无法找到组件中确实存在的png资源.
我通过显式指定程序集名称找到了解决方案,即使调用者与资源位于同一程序集中.
以下是使用Pack URI语法的外观:
pack://application:,,,/MyAssemblyName;component/MyResourcesFolder/MyImage.png
Run Code Online (Sandbox Code Playgroud)
(有关包URI的更多信息,请参阅http://msdn.microsoft.com/en-us/library/aa970069.aspx)
编辑:在指定程序集名称后,我必须做的另一件事是清理项目.问题在构建后返回,但在清洁中间产品后解决了.这绝对是Visual Studio中的一个错误.