2017-10-10 5 views
0

Ich verwende eine DataTable (im Code erstellt), und ich zeige es DefaultView mit einem DataGrid. Die DataTable enthält eine DataColumn, die DateTime hat, wie es DataType ist.C# WPF DataGrid - DateTime-Formatierung

Die DataGrid zeigt Daten als: 10/9/2017 12:00:00 AM. Gibt es eine Möglichkeit, die Werte DateTime als 10/9/2017 anzuzeigen, ohne die Spalte DataType zu string zu ändern?

Vielen Dank im Voraus :)

Antwort

0

Ihre Bindung wie dieses

{Binding Property, StringFormat=d}" 

Voll Beispiel

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

Das DataGrid in XAML enthält keine Spaltendefinitionen, es ist nur an die Standardansicht der DataTable gebunden. Funktioniert perfekt, außer für die Datumsanzeige. – Njubster

+0

lässt c. gib mir etwas Zeit – Ramankingdom

0

Sie konnten die AutoGeneratingColumn Ereignis für die DataGrid Griff aussehen sollte:

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