alielie
2026-04-23 ef52fd6fd07508883dce4eb002acda59f0169e59
HMI.Core/Util/LangUtil.cs
@@ -4,8 +4,8 @@
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Runtime.InteropServices.ComTypes;
using System.Windows;
using System.Windows.Markup;
@@ -28,9 +28,17 @@
        {
        }
        public static void LoadLang()
        private static string GetLang()
        {
            var lang = SystemSetting.Instance.CurrentLanguage;
            if (string.IsNullOrEmpty(lang)) lang = CultureInfo.CurrentUICulture.ToString();
            return lang;
        }
        public static void LoadLang()
        {
            var lang = GetLang();
            if (!ResourceMap.ContainsKey(lang)) return;
            var newLang = ResourceMap[lang];
            if (currentResource == newLang)
@@ -47,16 +55,23 @@
        public static void Load()
        {
            /// 按Json加载
            //LoadAllDataByJson();
            /// 下面是按xaml加载
            LoadAllDataByXaml();
            LoadLang();
            try
            {
                /// 按Json加载
                //LoadAllDataByJson();
                /// 下面是按xaml加载
                LoadAllDataByXaml();
                LoadLang();
            }
            finally
            {
            }
        }
        public static string Get(string key)
        {
            var lang = SystemSetting.Instance.CurrentLanguage;
            var lang = GetLang();
            if (!JsonMap.ContainsKey(lang)) return key;
            if (!JsonMap[lang].ContainsKey(key)) return key;
            return JsonMap[lang][key].ToString();
@@ -98,7 +113,7 @@
                        }
                    }
                }
                catch (Exception ex)
                catch
                {
                }
            }
@@ -146,7 +161,7 @@
                        }
                    }
                }
                catch (Exception ex)
                catch
                {
                }
            }
@@ -171,7 +186,7 @@
    public static class LangReader
    {
        public static string lang(this DependencyObject dp, string key, params object[] datas)
        public static string lang(this object dp, string key, params object[] datas)
        {
            return string.Format(LangUtil.Get(key), datas);
        }