相关的视频教程 https://www.bilibili.com/video/BV1fK4y1R7EP?share_source=copy_web
选择窗体属性,把语言改成需要的语言,然后界面也改成相应的语言
之后核心代码在以下
public class Language { /// <summary> /// 设置当前程序的界面语言 /// </summary> /// <param name="lang">language:zh-CN, en-US</param> /// <param name="form">窗体实例</param> /// <param name="formType">窗体类型</param> public static void SetLang(string lang, Form form, Type formType) { System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(lang); if (form != null) { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(formType); resources.ApplyResources(form, "$this"); AppLang(form, resources); } } /// <summary> /// 遍历窗体所有控件,针对其设置当前界面语言 /// </summary> /// <param name="control"></param> /// <param name="resources"></param> private static void AppLang(Control control, System.ComponentModel.ComponentResourceManager resources) { if (control is MenuStrip) { resources.ApplyResources(control, control.Name); MenuStrip ms = (MenuStrip)control; if (ms.Items.Count > 0) { foreach (ToolStripMenuItem c in ms.Items) { AppLang(c, resources); } } } foreach (Control c in control.Controls) { resources.ApplyResources(c, c.Name); AppLang(c, resources); } } /// <summary> /// 遍历菜单 /// </summary> /// <param name="item"></param> /// <param name="resources"></param> private static void AppLang(ToolStripMenuItem item, System.ComponentModel.ComponentResourceManager resources) { if (item is ToolStripMenuItem) { resources.ApplyResources(item, item.Name); ToolStripMenuItem tsmi = (ToolStripMenuItem)item; if (tsmi.DropDownItems.Count > 0) { for (int i = 0; i < tsmi.DropDownItems.Count; i++) { if (tsmi.DropDownItems[i] is ToolStripMenuItem) { { AppLang((ToolStripMenuItem)tsmi.DropDownItems[i], resources); } } } } } } }
以下是方法调用
static class Program { /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Test(); } static void Test() { Form1 form = new Form1(); Language.SetLang("zh-cn", form, typeof(Form1));//zh-cn中文 en英文 Application.Run(form); } }
源码实例 下载链接: https://pan.baidu.com/s/1gOyK76EHqjTPWAjSM44K7A 提取码: me4a
原创来自 http://www.luofenming.com/show.aspx?id=ART2018052100001
转发请保留原创地址,谢谢!