2017-06-09 8 views
0

Wie kommt es mir immer 0001 als Jahr, als ich Eigenschaft Datum an eine Datepicker Steuerelement binden (Material Design)XAML Material Design Datepicker Bindungs ​​Jahr ist immer 00001

<DatePicker Grid.Column="1" 
      Grid.Row="2" 
      Width="200" 
      Language="nl-BE" 
      VerticalAlignment="Center" 
      DisplayDate="{Binding BirthDate, Mode=TwoWay}" /> 

Auf meinem Viewmodel:

public DateTime BirthDate { get; set; } 

Wenn Ich schiebe das Jahr speichern ist immer 0001 auch im DatePicker ... Und wenn du auf den Kalender klickst sollte das heutige Datum Standard sein.

+0

hast du "BirthDate" etwas zugewiesen? –

+0

@ DanielA.White nein, es sollte leer sein, es ist eine Form, um eine neue Person hinzuzufügen. Ich möchte den Datumswert, der ausgewählt ist – user7998549

Antwort

1

Das Jahr des Standardwerts (DateTime.MinValue) ein DateTime ist 0001.

Sie sollten die Eigenschaft source (BirthDate) auf einen anderen Wert, wie zum Beispiel DateTime.Now gesetzt:

public DateTime BirthDate { get; set; } = DateTime.Now; 
+0

Dies funktioniert, thx. – user7998549

0

Aktualisieren Sie Ihre DatePicker-Definition und binden Sie ihre SelectedDate-Eigenschaft (statt DisplayDate).

1

Verwenden Sie die Eigenschaft "SelectedDate" anstelle von "DisplayDate".

<DatePicker Grid.Column = "1" 
     Grid.Row = "2" 
     Width = "200" 
     Language = "nl-BE" 
     VerticalAlignment = "Center" 
     SelectedDate = "{Binding BirthDate, Mode=TwoWay}" /> 
+0

Gleiches Ergebnis, Jahr ist 0001 – user7998549