2017-10-10 90 views
0

我使用的是DataTable(在代碼中創建),我使用DataGrid顯示它是DefaultView。該DataTable包含DataColumnDateTime因爲它的DataTypeC#WPF DataGrid - DateTime格式

DataGrid顯示爲日期:10/9/2017 12:00:00 AM。有沒有不改變列的DataTypestring顯示DateTime10/9/2017的方法嗎?

感謝提前:)

回答

0

你的綁定應該像這樣

{Binding Property, StringFormat=d}" 

完整的示例

<DataGridTextColumn Header="Your Header" Binding="{Binding Property, StringFormat=d}" ></DataGridTextColumn> 
+0

在XAML中DataGrid中不包含列定義,它只是綁定到DataTable的默認視圖。完美的作品,除了日期顯示。 – Njubster

+0

讓c。給我一些時間 – Ramankingdom

0

您可以處理爲DataGridAutoGeneratingColumn事件:

private void dg_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e) 
{ 
    if (e.PropertyType == typeof(DateTime)) 
    { 
     e.Column = new DataGridTextColumn() 
     { 
      Binding = new Binding(e.PropertyName) { StringFormat = "d" } 
     }; 
    } 
}