1-我設計的應用程序有兩個接口(英語,阿拉伯語),用戶可以在運行時選擇UI語言,並且應用程序重新啓動後可以看到更改。我將選定的語言存儲在app.config中。調試編譯.net應用程序
2-從表單構造i。由該代碼改變的CurrentUICulture到所選擇的郎:
Public.ArabicView = UmAlQuraCalender.Properties.Settings.Default.ArabicView;
if (Public.ArabicView == true)
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("ar-SA");
else
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US");
3-應用程序工作,而在我的機器的問題。
4-當我測試在另一臺機器上的應用,只有一個用戶界面的工作(英文),如果我檢查其他語言,並重新啓動應用程序沒有發生的界面保持英語雖然阿拉伯本地安裝。
我使用兩個單選按鈕:一個用於阿拉伯樹膠和其他爲英語,和點擊事件內我改變的CurrentUICulture於所選擇的語言的代碼內:
private void rbArabic_Click(object sender, EventArgs e)
{
Public.ArabicView = rbArabic.Checked;
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("ar-SA");
UmAlQuraCalender.Properties.Settings.Default.ArabicView = Public.ArabicView;
UmAlQuraCalender.Properties.Settings.Default.Save();
MessageBox.Show("UI Language will be changed after application resart");
}
private void rbEnglish_Click(object sender, EventArgs e)
{
Public.ArabicView = rbArabic.Checked;
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US");
UmAlQuraCalender.Properties.Settings.Default.ArabicView = Public.ArabicView;
UmAlQuraCalender.Properties.Settings.Default.Save();
MessageBox.Show("UI Language will be changed after application resart");
}
5-也怎麼可以調試(跟蹤源代碼)在測試機器中找出問題?
如果有人能幫助我,我會感激。
你對'使用'指令有一些哲學反對嗎?他們會讓你的代碼*更容易閱讀...... – 2010-12-12 08:14:41
爲任何動作編寫日誌通常有助於在這種情況下 – ASpirin 2010-12-12 08:37:55
「我將所選語言存儲在app.config中。」請注意,這需要對應用程序目錄進行寫入訪問,當程序安裝在程序目錄中並且在受限用戶(或受UAC保護的帳戶)上運行時通常不可用 – CodesInChaos 2010-12-12 13:15:50