扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
¡¡¡¡ÎÒÃÇ°ÑÒ»¸ö´°ÌåÖÐҪʵÏÖ¶àÓïÑÔÏÔʾµÄ¿Ø¼þµÄÃû³ÆÈ«¶¼·ÅÔÚ£¼Controls£¾£¼/Controls£¾ÖУ¬nameÖ¸µÄÊǿؼþµÄNameÊôÐÔ£¬¶øtextÖ¸µÄÊǿؼþµÄTextÊôÐÔ¡£
¡¡¡¡¶ÁÈ¡µÄº¯ÊýÈçÏ£º
/// £¼summary£¾
/// ¶ÁÈ¡¶àÓïÑÔµÄ×ÊÔ´Îļþ
/// £¼/summary£¾
/// £¼param name="frmName"£¾´°ÌåµÄName£¼/param£¾
/// £¼param name="lang"£¾ÒªÏÔʾµÄÓïÑÔ(ÈçZH»òEN)£¼/param£¾
/// £¼returns£¾£¼/returns£¾
public static Hashtable ReadResource(string frmName,string lang){
¡¡Hashtable result = new Hashtable();
¡¡XmlReader reader = null;
¡¡FileInfo fi = new FileInfo("resources/AppResource_" + lang + ".xml");
¡¡if (!fi.Exists)
¡¡¡¡reader = new XmlTextReader("resources/AppResource.xml");
¡¡else
¡¡¡¡reader = new XmlTextReader("resources/AppResource_" + lang + ".xml");
¡¡XmlDocument doc = new XmlDocument();
¡¡doc.Load(reader);
¡¡XmlNode root = doc.DocumentElement;
¡¡XmlNodeList nodelist = root.SelectNodes("Form[Name='" + frmName + "']/Controls/Control");
¡¡foreach (XmlNode node in nodelist){
¡¡¡¡try{
¡¡¡¡¡¡XmlNode node1 = node.SelectSingleNode("@name");
¡¡¡¡¡¡XmlNode node2 = node.SelectSingleNode("@text");
¡¡¡¡¡¡if (node1 != null){
¡¡¡¡¡¡¡¡result.Add(node1.InnerText.ToLower(),node2.InnerText);
¡¡¡¡¡¡}
¡¡¡¡¡¡}catch(FormatException fe){
¡¡¡¡¡¡¡¡Console.WriteLine(fe.ToString());
¡¡¡¡¡¡}
¡¡¡¡}
¡¡¡¡reader.Close();
¡¡return result;
}
¡¡¡¡µÚËIJ½£ºÏÔʾÏàÓ¦µÄÖµ
¡¡¡¡ÎÒÃÇ¿ÉÒÔÔÚÿ¸ö´°ÌåµÄLoad()ʼþÖУ¬µ÷ÓÃÏàÓ¦µÄº¯Êý£¬À´ÊµÏÖÕâ¸ö¹¦ÄÜ¡£µ±È»£¬ÎÒÃÇÊ×ÏȱØÐëÏÈ£¬»ñµÃÕâ¸ö´°ÌåÒªÏÔʾµÄÓïÑԵĴúÂë(ÈçEN»òZH)£¬¸ÃÖµ¿ÉÒÔ´æ·ÅÔÚÒ»¸ö"È«¾Ö"±äÁ¿ÖÐ(±ÈÈç°Ñֵͨ¹ýGlobal.SetValue("lang",langugae)´æÈ룬ͨ¹ýGlobal.GetValue("lang")È¡³ö)¡£
/// £¼summary£¾
/// »ñÈ¡¿Ø¼þµÄÃû³Æ
/// £¼/summary£¾
/// £¼param name="form"£¾£¼/param£¾
public static void getNames(Form form)
{
¡¡//¸ù¾ÝÓû§Ñ¡ÔñµÄÓïÑÔ»ñµÃ±íµÄÏÔʾÎÄ×Ö
¡¡Hashtable table = ¡¡¡¡AppConfig.ReadResource(form.Name,Global.GetValue("lang").ToString());
¡¡Control.ControlCollection controlNames = form.Controls;
¡¡//¿ÉÒÔÔÚÕâÀïÉèÖô°ÌåµÄһЩͳһµÄÊôÐÔ£¬ÕâÑùËùÓеĴ°Ì嶼»áÓ¦ÓøÃÉèÖÃ
¡¡// form.KeyPreview = true;
¡¡// form.MaximizeBox = false;
¡¡// form.MinimizeBox = false;
¡¡// form.ControlBox = false;
¡¡// form.FormBorderStyle = FormBorderStyle.FixedDialog;
¡¡// form.StartPosition = FormStartPosition.CenterScreen;
¡¡// form.TopMost = true;
¡¡// form.KeyDown += new KeyEventHandler(OnEnter);
¡¡try
¡¡{
¡¡¡¡foreach(Control control in controlNames)
¡¡¡¡{
¡¡¡¡¡¡if(control.GetType() == typeof(System.Windows.Forms.Panel))
GetSubControls(control.Controls,table);
¡¡¡¡¡¡if(control.GetType() == typeof(System.Windows.Forms.GrouPBox))
GetSubControls(control.Controls,table);
¡¡¡¡¡¡// if(control.GetType() == typeof(System.Windows.Forms.TextBox) && control.Enabled)
¡¡¡¡¡¡// control.GotFocus += new EventHandler(Txt_Focus);
¡¡¡¡¡¡if(table.Contains(control.Name.ToLower()))
control.Text = (string)table[control.Name.ToLower()];
¡¡¡¡}
¡¡¡¡if(table.Contains(form.Name.ToLower()))
¡¡¡¡¡¡form.Text = (string)table[form.Name.ToLower()];
¡¡}
¡¡catch(Exception ex)
¡¡¡¡Console.WriteLine(ex.ToString());
}
¡¡¡¡ÒòΪÓÐЩ¿Ø¼þÆäÄÚ²¿»¹ÓÐ×ӿؼþ£¬ËùÒÔÎÒÃÇ»¹ÒªÓиö¶ÁÈ¡¿Ø¼þÖÐ×ӿؼþµÄÏÔʾֵµÄº¯Êý¡£
/// £¼summary£¾
/// »ñµÃ×ӿؼþµÄÏÔʾÃû
/// £¼/summary£¾
/// £¼param name="controls"£¾£¼/param£¾
/// £¼param name="table"£¾£¼/param£¾
private static void GetSubControls(Control.ControlCollection controls,Hashtable table)
{
¡¡foreach(Control control in controls)
¡¡{
¡¡¡¡if(control.GetType() == typeof(System.Windows.Forms.Panel))
GetSubControls(control.Controls,table);
¡¡¡¡if(control.GetType() == typeof(System.Windows.Forms.GroupBox))
GetSubControls(control.Controls,table);
¡¡¡¡if(table.Contains(control.Name.ToLower()))
control.Text = (string)table[control.Name.ToLower()];
¡¡}
}
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者