当我将WPF UserControl与内置项目以外的项目一起使用时,无法找到资源 - c#

因此,我将WPF用户控件构建为较大解决方案的一部分。我正在构建另一个应用程序,该用户控件可以很好地工作。我在新应用程序中添加了对DLL的引用,将其连接并编译。窗口加载,我可以看到它告诉我找不到的图像。在显示主窗口并填充用户控件之后,将引发异常,提示...

System.IO.IOException:'无法找到资源'resources / nosortnofilter.png'。

用户控件是一个DataGrid,其中添加了一些扩展。它抛出的列是“ id”。如您在图像中看到的,红色箭头显示了在所有列中显示的nosortnofilter.png图像。那么为什么会抛出该异常呢?

当我将WPF UserControl与内置项目以外的项目一起使用时,无法找到资源 - c#

它引发的代码行在这里。

If ImageName = "" Then ImageName = "NoSortNoFilter"
img.Source = New BitmapImage(New Uri("pack://application:,,,/Resources/" & ImageName & ".png"))

当我将WPF UserControl与内置项目以外的项目一起使用时,无法找到资源 - c#

因此,从我的角度来看,一切看起来都很不错。希望有人可以看到我没看到的东西。

编辑:找到一个solution。这可行。但是它仍然不能回答为什么原始的pack://格式的URI仅适用于原始解决方案的问题。

img.Source = New BitmapImage(New Uri($"Resources/{ImageName}.png", UriKind.Relative))

编辑:感谢rfmodulator为我提供了DLL的正确URI。

img.Source = New BitmapImage(New Uri("pack://application:,,,/AdvancedSortFilterDataGrid;component/Resources/" & ImageName & ".png"))

参考方案

这是应用程序程序集中资源的URI:

pack://application:,,,/Resources/[RESOURCENAME]

要在DLL中获取资源,URI看起来更像这样:

pack://application:,,,/[DLLNAME];component/Resources/[RESOURCENAME]

有关详细信息,请参见Pack URIs in WPF。

当回复有时是一个对象有时是一个数组时,如何在使用改造时解析JSON回复? - java

我正在使用Retrofit来获取JSON答复。这是我实施的一部分-@GET("/api/report/list") Observable<Bills> listBill(@Query("employee_id") String employeeID); 而条例草案类是-public static class…

改造正在返回一个空的响应主体 - java

我正在尝试使用Retrofit和Gson解析一些JSON。但是,我得到的响应机构是空的。当我尝试从对象中打印信息时,出现NullPointerException。我确保URL正确,并且我也确保POJO也正确。我正在使用jsonschema2pojo来帮助创建POJO类。这是我要解析的JSON{ "?xml": { "@versi…

Mongo汇总 - javascript

我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …

如何在Wiremock中为JUNIT匹配精确的json - java

我正在使用Wiremock在Spring启动应用程序中模拟Junit的REST服务。我的问题是,我无法匹配多个匹配模式。 Junit.javaStringValuePattern pattern = WireMock.matching(".*"); givenThat(post(urlEqualTo("/softwares�…

Ajax表单未获得结果 - javascript

我有一个带有搜索功能的主页。从主页搜索可以正常工作,但是当我尝试使用ajax表单(在url.com/search?id=biology上)再次搜索时,我被重定向到404页面,提示未找到/Search。主页上的表格:@using (Html.BeginForm("Index", "Search", new { Retur…