This commit is contained in:
xyy
2026-05-07 16:51:45 +08:00
parent 9ca9bc2f12
commit 6d358c2bf0
16 changed files with 648 additions and 183 deletions

View File

@@ -0,0 +1,45 @@
using System;
using System.Configuration;
using System.Windows;
using System.Windows.Controls;
public class ResourceManager
{
//public static void SwitchLanguage(string culture)
//{
// var uri = new Uri($"/Resources/Strings.{culture}.xaml", UriKind.Relative);
// var resourceDict = Application.LoadComponent(uri) as ResourceDictionary;
// Application.Current.Resources.MergedDictionaries.Clear();
// Application.Current.Resources.MergedDictionaries.Add(resourceDict);
//}
public static void SwitchLanguage(string culture)
{
try
{
// 保存到App.config
var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings["Language"].Value = culture;
config.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("appSettings");
// 切换语言
var resourceDict = new ResourceDictionary
{
Source = new Uri($"/Resources/Strings.{culture}.xaml", UriKind.Relative)
};
Application.Current.Resources.MergedDictionaries.Clear();
Application.Current.Resources.MergedDictionaries.Add(resourceDict);
}
catch (Exception ex)
{
MessageBox.Show($"切换语言失败: {ex.Message}");
}
}
}
// 在SelectionChanged中使用