概念
应用程序具备多语言支持,是实现全球化(Globalization)和本地化(Localization)最重要的功能。
关于全球化和本地化的概念、设计原则、基本流程可参考微软文档 https://docs.microsoft.com/zh-cn/dotnet/framework/wpf/advanced/wpf-globalization-and-localization-overview
目前有多种方案可供选择:
- 使用resx资源文件
- 使用xaml资源文件
- 使用markup扩展
本文介绍学习使用resx文件的一些经验和心得。
管理模型
resx资源文件通常是嵌入应用的数据,随应用程序一起发布,如果修改资源文件中的数据,需要重新编译。
.NET对多种语言使用“中心–卫星”模式管理多个区域的资源,处于“中心”位置的称为默认资源,处于“卫星”位置的称为特定区域资源。
例如,项目中有个资源文件Resources.resx,这个就是默认资源文件,Resources.en-US.resx、Resources.fr-FR.resx、Resources