- 创建资源文件Resource.resx、Resource.en-US.resx
- 因为资源文件自动创建的类构造函数是internal类型,WPF无法直接实例化,所以需要创建一个类,命名为Resources.cs继承资源文件类,如下所示:
public class Resources:Resource { public Resources() { } }
-
在app.xmal文件中引入Resources类
<ResourceDictionary>
<local:Resources x:Key="Res" d:IsDataSource="True" />
</ResourceDictionary>
注意:Resources类在当前项目命名空间下,才可直接用local引入资源类,否则需要先引入 Resources类的命名空间。
4. 之后就可以在WPF窗体中使用在资源文件中添加的字符串,如下所示:
<TextBlock Text="{Binding Source={StaticResource Res},Path=productName}" />
5.切换语言,代码如下
//切换中文
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-CN");
//切换英文
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US");