2009-02-05 2 views
5

Ich verwende das Kalender-Steuerelement des WPF-Toolkits, damit Benutzer ein Datum auswählen können. Wenn das Datum noch nicht ausgewählt ist, ist die Eigenschaft, an die das SelectedDate gebunden ist, Null. Dies bewirkt, dass der Kalender standardmäßig auf den 1. Januar 0 AD eingestellt wird. Ich möchte etwas wieWie setze ich TargetNullValue auf ein Datum?

SelectedDate="{Binding UserPickedDate, TargetNullValue=Today, Mode=TwoWay}" 

tun Aber beide "Heute" und "Jetzt" werfen Bindungsfehler. Kann ich TargetNullValue verwenden, um das Standarddatum auf Today oder Now zu setzen?

Antwort

12

Try this:

xmlns:sys="clr-namespace:System;assembly=mscorlib" 
... 

TargetNullValue={x:Static sys:DateTime.Now} 
+3

Danke, ich war auf jeden Fall ein Gehirnfrost hat. Für andere, die dies finden, müssen Sie mscorlib importieren, z. xmlns: sys = "clr-namespace: System; assembly = mscorlib". Dann ist die Bindung SelectedDate = "{Binding UserPickedDate, TargetNullValue = {x: Statisches sys: DateTime.Today}, Mode = TwoWay}". –

+0

Das Festlegen von TargetNullValue auf Today im Kalender-Steuerelement hat die unglückliche Konsequenz, dass bei Auswahl von Today die gebundene Eigenschaft auf "Null" gesetzt wird. Aus diesem Grund habe ich in meinem letzten Code TargetNullValue auf Now gesetzt, der dieses Problem nicht hat. –

+0

Das war, was ich suchte. Meine Datumsauswahl erinnerte sich an den letzten Wert, nachdem er an ein neues Objekt gebunden wurde, für das noch kein Datum festgelegt wurde. – Aligned

Verwandte Themen