使用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的配置。

也可以在窗體啟動前彈出對話框又用戶選擇語言,詳細請下載源代碼。

柔城多語言實例源碼下載地址:http://files.cnblogs.com/sosoft/SosoftMultiLanguages.rar


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM