• 使用Visual Studio实现WinForm多语言版本实例


    Visual Studio可以很好的支持WinForm多语言界面的实现。

    首先使用Visual Studio创建一个WinForm项目,在窗体上放上所需的控件,调好位置,并使用一种语言(例如简体中文)编辑好窗体和控件的Text等属性。

     

    然后点击窗体,设置窗体的Localizable属性为True。 

    接着把窗体的Language属性选择为所需其它的语言,例如英语。接着用所选语言编辑窗体和控件的Text等属性,调整好位置。

     

    然后为项目添加一个配置文件app.config,在配置文件中增加文化条目SosoftCulture:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <appSettings>
        <add key="SosoftKey" value="sosoftValue" />
        <add key="SosoftURL" value="sosoft.cnblogs.com" />
        <add key="SosoftProject" value="sosoft.codeplex.com" />
        <add key="SosoftCulture" value="en"  />
      </appSettings>
    </configuration>

    这里SosoftCulture的值“en”表示英语,如果要设为中文可以改为“zh”。

    接着可以在启动程序的时候,读取配置文件的文化设置,把界面显示为相应的语言界面。

    例如在窗体的构造函数中,在InitializeComponent();之前,加入SetCulture();

    SetCulture()方法具体代码如下:

    private void SetCulture()
            {
                m_culture = SosoftConfigHelper.GetAppConfig("SosoftCulture");
                if (string.IsNullOrEmpty(_culture))
                    return;
                try
                {
                    CultureInfo m_ci = new CultureInfo(m_culture);
                    Thread.CurrentThread.CurrentCulture = m_ci;
                    Thread.CurrentThread.CurrentUICulture = m_ci;
                }
                catch
                {    }
            }

    其中SosoftConfigHelper类是配置文件读写类,需添加到项目中,请参考http://www.cnblogs.com/sosoft/archive/2012/09/26/sosoftconfighelper.html
    记得引用命名空间
    using System.Globalization;
    using System.Threading;

    按F5运行,就可以显示所配置语言的界面了。要改变界面只需改变SosoftCulture的配置。

    也可以在窗体启动前弹出对话框又用户选择语言,详细请下载源代码。

    柔城多语言实例源码下载地址:https://files.cnblogs.com/sosoft/SosoftMultiLanguages.rar

  • 相关阅读:
    第5周作业
    第四周JAVA作业
    第三周JAVA学习
    第二周JAVA学习日志
    有关JAVA学习
    Swift 页面跳转
    Swift 登录判断
    单元测试学习
    WCF学习心得
    初次使用Oracle
  • 原文地址:https://www.cnblogs.com/sosoft/p/duoyuyan.html
Copyright © 2020-2023  润新知