如何在WP7中本地化字符串?

时间:2011-11-09 13:29:25

标签: windows-phone-7

我按照msdn关于本地化的教程,他们实现了这样的本地化绑定:

{Binding Path=Localizedresources.AppName, 
         Source={StaticResource LocalizedStrings}}

但是当我使用Expression Blend时,本地化绑定的实现方式如下:

{Binding Localizedresources.AppName, Mode=OneWay}

我不明白为什么他们不同。 MSDN和Expression Blend之所以有不同的原因吗?我有理由偏好另一种方式吗?

2 个答案:

答案 0 :(得分:2)

前者是Windows Phone的实现,因为Windows Phone不支持静态类绑定(而不是WPF)。

后者适用于WPF,不适用于Windows Phone。

此外,如果您希望Expression Blend支持本地化,请将LocalizedStrings资源添加到DesignTimeResources.xaml文件(通常位于Properties文件夹中)。然后,一旦构建项目,Expression Blend也将在设计时显示本地化。

答案 1 :(得分:0)

此外,如果您希望能够在运行时更改语言,一个简单但有用的技巧是在更改线程上的当前(UI)文化后 - 在“AppName”上调用PropertyChanged - 它将立即更新所有您应用中的本地化字符串。