我已經設置了一個windows窗體項目來使用本地化,以便它將支持中文和英文語言。當表單加載時,我已經建立了一種強制語言的方式。的InitializeComponent()被調用之前,我有一些代碼,這是否......C#Windows窗體本地化測試
switch (Properties.Settings.Default.SelectedLanguage)
{
case "":
break;
case "English":
Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
break;
case "Chinese":
try
{
Thread.CurrentThread.CurrentUICulture = new CultureInfo("zh-CHT");
Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-CHT");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
break;
}
所以當SelectedLanguage屬性設置爲「中國」的節目應該用中國本土化嗎?我在調試時測試了它,它的工作原理與預期完全相同。也就是說,當程序啓動SelectedLanguage ==「Chinese」時,所有的按鈕和標籤都會顯示在我輸入的中文文本中。當SelectedLangugage ==「英文」時,所有內容都顯示在我輸入的英文文本中。
問題是,當我安裝此程序並運行它(不調試)時,它不起作用。即使在我的開發機器上。無論將SelectedLanguage設置爲何種程序,都會顯示英文本地化。我甚至會在顯示Application.CurrentCulture.Name的程序開始時彈出一個消息框,它顯示中文文化名(zh-CHT),但它仍然以英文顯示所有內容。那麼在調試期間和實際運行期間會發生什麼?我該如何解決它?!?
就是這樣。我只需要添加'本地化資源'項目輸出,現在一切都很好! (我認爲它們是自動包含的!) – PICyourBrain 2011-02-02 17:56:47