.resjson在C#XAML商店应用程序中

时间:2014-10-06 20:32:36

标签: c# localization windows-runtime winrt-xaml

对于xaml / c#store应用程序,是否可以使用resjson格式而不是resw?

在我的场景中,我有大量已经翻译过的json文件。我发现json格式更容易使用,所以我更喜欢使用json文件而不是resw。我知道多语言工具包可以工作,但是现在我在使用带有x:Uid的resjson格式或直接使用资源加载器时获得空字符串。

var loader = new Windows.ApplicationModel.Resources.ResourceLoader();
string text = loader.GetText("HelloWorld/Text");

文字以空字符串形式出现。

但是,我能够通过这个看到字符串:

var map = ResourceManager.Current.MainResourceMap.GetSubtree("/resources");

var list  = map.Keys.ToList();

string val = map.GetValue("Greeting.Text").ValueAsString;

1 个答案:

答案 0 :(得分:2)

好消息!您可以在c#xaml商店应用程序中使用.resjson以及多语言工具包。

获取x:Uid工作的技巧是,在resjson文件中,您需要使用/而不是来定义键。

我的.resjson只有一个键作为“Greeting / Text”然后我能够在我的xaml文件中引用它

<Run x:Uid="Greeting" />