温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#中怎么调用函数显示值

发布时间:2021-07-14 14:32:35 来源:亿速云 阅读:157 作者:Leah 栏目:编程语言

C#中怎么调用函数显示值,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

C#调用函数显示值

我们可以在每个窗体的Load()事件中,C#调用函数显示值,来实现这个功能。当然,我们首先必须先,获得这个窗体要显示的语言的代码(如EN或ZH),该值可以存放在一个"全局"变量中(比如把值通过 Global.SetValue("lang",langugae)存入,通过Global.GetValue("lang")取出)。

  1. /// <summary>  

  2. /// 获取控件的名称  

  3. /// </summary>  

  4. /// <param name="form"></param>  

  5. public static void getNames(Form form)  

  6. {  

  7.  

  8. //根据用户选择的语言获得表的显示文字  

  9. Hashtable table = AppConfig.ReadResource
    (form.Name,Global.GetValue("lang").ToString());  

  10. Control.ControlCollection controlNames = form.Controls;  

  11. //可以在这里设置窗体的一些统一的属性,这样所有的窗体都会应用该设置  

  12. // form.KeyPreview = true;  

  13. // form.MaximizeBox = false;  

  14. // form.MinimizeBox = false;  

  15. // form.ControlBox = false;  

  16. // form.FormBorderStyle = FormBorderStyle.FixedDialog;  

  17. // form.StartPosition = FormStartPosition.CenterScreen;  

  18. // form.TopMost = true;  

  19. // form.KeyDown += new KeyEventHandler(OnEnter);  

  20. try  

  21. {  

  22. foreach(Control control in controlNames)  

  23. {  

  24. if(control.GetType() == typeof(System.Windows.Forms.Panel))  

  25. GetSubControls(control.Controls,table);  

  26.  

  27. if(control.GetType() == typeof(System.Windows.Forms.GrouPBox))  

  28. GetSubControls(control.Controls,table);  

  29.  

  30. // if(control.GetType() == typeof
    (System.Windows.Forms.TextBox) && control.Enabled)  

  31. // control.GotFocus += new EventHandler(Txt_Focus);  

  32.  

  33. if(table.Contains(control.Name.ToLower()))  

  34. control.Text = (string)table[control.Name.ToLower()];  

  35. }  

  36. if(table.Contains(form.Name.ToLower()))  

  37. form.Text = (string)table[form.Name.ToLower()];  

  38. }  

  39. catch(Exception ex)  

  40. Console.WriteLine(ex.ToString());  

  41. }  

因为有些控件其内部还有子控件,所以我们还要有个读取控件中子控件的C#调用函数显示值。

/// <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()];  }  }

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI