WPF中的多语言切换资源
立即下载
资源介绍:
一个非常好用的多语言切换控件,使用环境为WPF,使用时引入该项目即可,绑定自己的资源文件即可使用,不会用的可以看我“WPF-AI对话”中的“WPF中的多语言切换”,里面有对应的使用方法。
# MultiLanguageForXAML
针对 WPF 的多语言支持库
## [Nuget](https://www.nuget.org/packages/MultiLanguageForXAML/)
## 效果预览
- **WPF**
![steup](https://raw.githubusercontent.com/DaZiYuan/MultiLanguageForXAML/master/screenshots/WPF.gif)
## 用法
- **定义语言文件**
```
//Languages/zh.json 编译时拷贝到目录
{
"txt": "一",
"format":"你好 {0} !",
"world":"世界"
}
//Languages/en.json 编译时拷贝到目录
{
"txt": "one",
"format":"hello {0} !",
"world":"world"
}
```
- **初始化**
```csharp
//WPF
//怀疑用Environment.CurrentDirectory开机启动时目录会出错,待验证
string appDir = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);
string path = Path.Combine(appDir, "Res\\Languages");
LanService.Init(new JsonFileDB(path), true,"zh");
//嵌入模式
//LanService.Init(new EmbeddedJsonDB("Samples.WPF.EmbeddedConfig.Languages"), true, "en");
```
- **XAML**
```XAML
```
- **切换语言**
```csharp
//WPF
LanService.UpdateCulture("en");
```
- **自定义控件映射(可选)**
```csharp
Xaml.CustomMaps.Add(typeof(CustomTitleBar), CustomTitleBar.TitleProperty);
```
## 广而告之
[应用推荐]([https://giantapp.cn/categories/products](https://www.mscoder.cn/projects)https://www.mscoder.cn/projects)