如何在 class 库 UWP 中使用 resw 资源文件

how can I use a resw resources file inside a class library UWP

我创建了一个 Class 库(通用 Windows UWP)项目,其中包含并在内部使用了一些 .resw 资源文件,但是如果在 class 库项目中找到了这些文件,则不会在执行 dll 期间从使用该 dll 的项目加载。只有当我在使用这个 dll 的项目中直接包含 resw 文件时,一切才能正常工作,但我必须避免这种情况。

Class 图书馆以这种方式获取资源地图(LocalizationLettersWords 是位于 Class 图书馆项目中的 .resw 文件)

 ResourceMap lettersResourceMap = ResourceManager.Current.MainResourceMap.GetSubtree("LocalizationLettersWords");

但是 lettersResourceMap 变为空。

在 UWP 中,ResourceLoader class 用于以编程方式获取资源。所以你可以使用这个:

string resource1 = ResourceLoader.GetForCurrentView().GetString("YourKey");

但在非UI线程上使用时将不起作用。在那种情况下,您应该使用方法 GetForViewIndependentUse,例如:

string resource2 = ResourceLoader.GetForViewIndependentUse().GetString("YourKey");

您可以阅读有关 ResourceLoader class here 的更多信息。