我在获取本地化资源文件在 Windows Phone 7 上运行时遇到了一些麻烦。这是我正在做的事情:
- 创建一个资源文件,例如“Strings.resx”(构建操作:编译)
- 创建一个键,例如“TestKey”,默认值为空字符串
- 在同一文件夹中添加一个值为“some English string”的英文资源文件:Strings.en-us.resx(构建操作:嵌入资源)
- 在同一文件夹中添加值为“某些日语字符串”的日语资源文件:Strings.ja-jp.resx(构建操作:嵌入资源)
在我的 PC Silverlight 中,当我更改 Thread.CurrentThread.CurrentCulture 时,WPF 应用程序工作正常。但在手机中,我似乎总是获取 Strings.resx 文件中的值 - 一个空字符串。
我尝试过使用设计器生成的代码并手动连接资源管理器,但这似乎并不重要。这是我的代码:
Type t = typeof(Strings);
_resourceManager = new ResourceManager(
t.Namespace + "." + t.Name,
t.Assembly);
_resourceManager.GetString("TestKey");
告诉我手机支持本地化资源... ;> 我做错了什么?谢谢!
Update:感谢奥利维尔转发链接。我也看到了这一点,但错过了重要的一步。我没有将“SupportedCultures”节点添加到我的 csproj 中。一切都变得不同了——希望其他人不会像我一样花两个小时试图解决这个问题。
<SupportedCultures>de-DE;es-ES;</SupportedCultures>
当然,手机上也支持本地化资源:
如何:构建 Windows Phone 本地化应用程序 http://msdn.microsoft.com/en-us/library/ff637520%28v=VS.92%29.aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)