2011-12-05 43 views
1

我即將準備開始撕裂出什麼小剩下我的頭髮在這個的。部分的MonthCalendar本地化失敗(「今天」的標籤沒有翻譯)

我的Windows 7在此應用下的WinForms應用程序(.NET 3.5)的工作是使用的MonthCalendar的實際日期採摘自定義日期選擇器控制。除了底部顯示的「今日」日期之外,它正在工作並且看起來很棒。它旁邊有「今日」標籤。如果你的聽衆是母語爲英語的人,這很好。我是丹麥人。

當文化被設置爲丹麥的「今天」的標籤,而一週和一個月的名稱和日期格式遵守有關Windows設置保持不變。這是一個小問題,但仍然是一個惱人的問題。

有沒有其他人看到過這個?有誰知道我做錯了什麼?否則,有誰知道解決方法?

回答

2

你的丹麥客戶將運行Windows的丹麥版本​​。其中使用丹麥文爲「今日」。更改計算機上的文化不會改變本機Windows資源的語言,就像MonthCalendar使用的語言一樣。

所以這不是一個真正的問題。如果您必須讓它看起來很真實,例如屏幕截圖,然後購買Ultimate版Windows許可證。這允許安裝修改這些原生資源的語言包。或者使用MSDN訂閱訪問丹麥語Windows版本。

+0

你怎麼知道他的丹麥客戶會使用丹麥版的Windows? – Bas

+0

因爲丹麥用戶當然喜歡丹麥版本的Windows。如果他們由於某種原因選擇了另一種語言,那麼就無法替代您的選擇。你也不能。 –

+0

因爲我沒有企業版或者終極版的窗口,所以現在很難測試,但這聽起來像是一個非常合理的解釋。我有一個facepalm時刻閱讀這個解釋。回想起來,它似乎有點明顯:)謝謝一堆。 – LOAS

2

的「今天」標籤反映操作系統的控制面板(區域和語言)語言,見下圖。

你幾乎搞砸,因爲這是烤到Windows窗體庫,並不能覆蓋/隱藏/設置私有字段來解決這個問題。這在.NET 4.0中是一樣的。

一種解決方法是隱藏在的MonthCalendar今日標籤,並創建一個用戶控件具有的MonthCalendar它是模擬了今天按鈕,但顯示在正確的語言文字。

+0

感謝您的答案和截圖。如果我理解正確,圖片中的第二部分只存在於企業和最終的Windows版本中。我有沒有它的Windows專業人士。 – LOAS