我使用的是DataTable
(在代碼中創建),我使用DataGrid
顯示它是DefaultView
。該DataTable
包含DataColumn
有DateTime
因爲它的DataType
。C#WPF DataGrid - DateTime格式
的DataGrid
顯示爲日期:10/9/2017 12:00:00 AM
。有沒有不改變列的DataType
到string
顯示DateTime
值10/9/2017
的方法嗎?
感謝提前:)
我使用的是DataTable
(在代碼中創建),我使用DataGrid
顯示它是DefaultView
。該DataTable
包含DataColumn
有DateTime
因爲它的DataType
。C#WPF DataGrid - DateTime格式
的DataGrid
顯示爲日期:10/9/2017 12:00:00 AM
。有沒有不改變列的DataType
到string
顯示DateTime
值10/9/2017
的方法嗎?
感謝提前:)
你的綁定應該像這樣
{Binding Property, StringFormat=d}"
完整的示例
<DataGridTextColumn Header="Your Header" Binding="{Binding Property, StringFormat=d}" ></DataGridTextColumn>
您可以處理爲DataGrid
的AutoGeneratingColumn
事件:
private void dg_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
if (e.PropertyType == typeof(DateTime))
{
e.Column = new DataGridTextColumn()
{
Binding = new Binding(e.PropertyName) { StringFormat = "d" }
};
}
}
在XAML中DataGrid中不包含列定義,它只是綁定到DataTable的默認視圖。完美的作品,除了日期顯示。 – Njubster
讓c。給我一些時間 – Ramankingdom