如何访问特定的resw资源文件

时间:2012-09-05 09:02:36

标签: windows-8 windows-runtime

对于C#/ XAML中的Windows 8应用程序,我需要访问特定的ressource文件。在WP7中,我使用了resx文件,现在看来我们需要使用resw文件。它不是语言资源文件。 我的文件名为ConfigResources.resw,它只包含一个键:“ConfigFile”和一个值:一个字符串。

如何从我的代码中访问它?我试了一下没有运气:

   var storedConfigFile = Application.Current.Resources["ConfigResources"];

然后如何从我的代码中编辑内部键的值?

谢谢

3 个答案:

答案 0 :(得分:7)

我最近在CodePlex上创建了一个名为ResW File Code Generator的项目,它简化了在Windows应用商店项目中使用代码中的本地化资源。它是一个自定义工具,可以自动生成和更新一个类似于完整版.NET中使用的ResX文件的帮助程序类

答案 1 :(得分:5)

根据here,您需要使用Windows.ApplicationModel.Resources.ResourceLoaderWindows.ApplicationModel.Resources.Core命名空间提供与resw文件的互动。

看起来应该是这样的:

var loader = new Windows.ApplicationModel.Resources.ResourceLoader();
var text = loader.GetString("Farewell");

或者,如果您正在创建跨平台库,您也可以使用System.Resources.ResourceManager

  

虽然System.Resources.ResourceManager类包含在   .NET for Windows Store应用程序,我们不建议使用它。使用   ResourceManager仅在开发为Portable Class的库中   图书馆项目,目标是多个平台。

来自here

ResourceManager rm = new ResourceManager("Strings", typeof(Example).Assembly);
string timeString = rm.GetString("TimeHeader");

答案 2 :(得分:4)

有一个sample显示了在WinRT应用程序中读取资源的不同方法(即从resw文件中读取)。