在 UI 中使用来自其他项目的 Windows 字符串资源
Posted
技术标签:
【中文标题】在 UI 中使用来自其他项目的 Windows 字符串资源【英文标题】:Use Windows String Ressources from other Project in UI 【发布时间】:2015-08-14 22:40:37 【问题描述】:我有 2 个项目,我想将本地化字符串资源存储在我的库中。所以要在后面的代码中加载字符串资源,我使用类似
ResourceLoader l = ResourceLoader.GetForCurrentView("MyLibrary/Resources");
string sample = l.GetString("sample");
如何设置这样的 XAML 字符串资源?我不想为解决方案中的每个项目复制字符串资源。
换句话说,如何告诉我的应用程序从我的库中使用视图中的字符串资源?
编辑:
我在我的 Windows-Store-Application 中使用 Resource.resw
文件。
我可以通过后面的代码访问它们,但我的“MainProject”中的视图只显示空字符串,我不希望他们在“MainProject”的Pages
后面的代码中设置每个字符串。
【问题讨论】:
在设计器中使用字符串打开 Resources.resx 并将访问修饰符从 internal 更改为 public(组合框在右上角)。这可能没有帮助没有阅读 XAML 部分:( 访问没问题。我可以从“MyLibrary”中获得完整的“ResourceMap”。 【参考方案1】:首先打开您的Resource.resx
文件并将访问修饰符从internal
更改为public
。这将允许您访问另一个项目中的整个资源。现在转到您要在其中访问Resource.resx
文件的项目。添加包含Resource.resx
的项目的引用,并在您要使用资源的任何位置包含命名空间。
如果这不起作用,请告诉我。
编辑:
请参考以下链接。他们正在解释如何参考或访问资源。
[How to load string resource][1]
Features and restrictions of resource loading Blockquote
我希望您会发现这些信息并可能解决您的问题。
【讨论】:
我正在使用“Resource.resw”文件。我在我想在 XAML 页面中显示字符串的项目中引用了“MyLibrary”。我添加了命名空间,但在我的 UI 中,TextBlocks
仍然是空的。我认为 .NET resx
和 Windows-Store 的 resw
之间有一点区别。我也没有找到访问修饰符,甚至在我的“Resource.resw”的 XML 视图中也没有。也许我误解了你,但我想告诉我的 MainProject 使用“MyLibrary”的“Resource.resw”,就像文件在我的“MainProject”中一样。以上是关于在 UI 中使用来自其他项目的 Windows 字符串资源的主要内容,如果未能解决你的问题,请参考以下文章
来自资源编辑器的其他 jar 与 LWUIT 1.5 示例应用程序不同