From dedcf4174c8540ee3a912daad2ff13e014e495b1 Mon Sep 17 00:00:00 2001
From: alielie <alielie@git.com>
Date: 星期五, 28 三月 2025 16:28:30 +0800
Subject: [PATCH] 优化UI组件;

---
 HMI.Core/Util/LangUtil.cs |   32 +++++++++++++++++++++++---------
 1 files changed, 23 insertions(+), 9 deletions(-)

diff --git a/HMI.Core/Util/LangUtil.cs b/HMI.Core/Util/LangUtil.cs
index 6a97afc..64c004c 100644
--- a/HMI.Core/Util/LangUtil.cs
+++ b/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,22 @@
 
         public static void Load()
         {
-            /// 鎸塉son鍔犺浇
-            //LoadAllDataByJson();
-            /// 涓嬮潰鏄寜xaml鍔犺浇
-            LoadAllDataByXaml();
-            LoadLang();
+            try
+            {
+                /// 鎸塉son鍔犺浇
+                //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();
@@ -171,7 +185,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);
         }

--
Gitblit v1.9.1