2016-05-13 31 views
0

所以我有一個項目發給了一位使用美國作爲他的語言環境的朋友。既然他把我送回了項目,我無法調和現場的差異!C#項目級日期格式?

在設計模式下,我看一個日期選取器屬性,例如,它顯示「13/05/2016 14:55」爲值,「31/12/9998」爲最大等。它應該如何。

雖然我運行該項目,DateTime.Now返回「05/13/2016 14:55」AND DatePicker.Value也返回「05/13/2016 14:55」!

如何讓我的項目回到正確的項目區域設置?!?!

+0

這是什麼類型的項目? –

+0

C#WinForms應用程序。 –

回答

2

在.NET中,語言環境將默認爲您的計算機的當前語言環境,如操作系統所報告的。很可能,您的朋友正在手動設置代碼中某處的語言環境。設計師自己實例化視圖,這就是設計師似乎使用當前語言環境的原因。您應該搜索源代碼以找到設置區域的位置。你可以自己重寫這個設置,但我不會推薦它。相反,我只是將其刪除。我認爲在大多數情況下最好允許.NET拉取OS語言環境。

搜索參考CurrentCultureCurrentUICultureCultureInfo.DefaultThreadCurrentCulture以查看是否可以找到更改區域設置的代碼。

+0

我只是想說要做到這一點,很好地完成。 'Designer'視圖仍然執行'.cs'代碼來繪製控件 - 並且對文化的更改會導致此問題。 –

+0

你知道什麼,埋在Load方法中,他將Culture設置爲「en」。這甚至不是文化。謝謝你救了我幾個小時! –