2010-06-02 146 views
0

我有一個datagridview被連接到我的主窗體上的綁定源。綁定源中的一個列和數據成員是DateTime對象。當datagridview顯示此項目時,它不使用窗口的默認區域設置來顯示日期時間。Datagridview日期時間格式不使用系統區域設置

奇怪的是,我可以訪問這個相同的DateTime對象並將其打印到文本框中,甚至將它傳遞給另一個具有另一個datagridview和綁定源的表單,並且它實際上在該表中正確顯示。

那麼,爲什麼在將DateTime對象轉換爲字符串時,我的主窗體上的datagridview不使用區域日期/時間設置?

我檢查過沒有特別的格式應用於datagridview,所以我沒有想法檢查。

你們知道是否有任何超級祕密的方式讓datagridview遵循系統區域格式規則嗎?另外,由於我非常懷疑我在應用程序中做了與此datagridview不同的其他功能,因此下一個潛在的問題可能出在應用程序負載上:也許因爲這會在應用程序加載時出現,它不會得到與其他datagridviews一樣的cultureUI設置?

更新我試過向datagrid視圖添加另一列,並將它掛接到相同的數據屬性(日期時間),我得到了相同的結果。因此,關於整個datagridview或其創建方式的一些事情是停止使用默認區域設置的「ToString」。

任何幫助?

回答

1

在款式上,在DataGridView的Edit Columns對話框:

  1. 搜索財產DefaultCellStyle,並打開此對話框;
  2. 搜索房產Format並選擇日期格式;
  3. 選擇您喜歡的格式。
+0

如果我這樣做,這些變化肯定會持續,這很好,但那不是我想要的結果。我不想應用任何特定的格式,我希望它採用Window的默認格式。其他一切都很好,但不是這個控制。 – Nick 2010-06-02 16:23:14

+0

我知道,如果我可以這樣說,那是一個缺陷或缺陷。我曾經設置* DateTime *列* OnFormLoad *的DefaultCellStyle屬性。 – 2010-06-02 16:30:32

+0

或者你可以簡單地格式化你綁定的日期時間屬性在hte getter,不起作用? – 2010-06-02 16:31:52

相關問題