2012-03-29 8 views
1

derzeit Ich habe dies in meinem XAML:Mit WP7 Datum & Zeit-Wandler in der Code-behind-Datei

<phone:PhoneApplicationPage.Resources> 
    <toolkit:RelativeTimeConverter x:Key="RelativeTimeConverter"/> 
</phone:PhoneApplicationPage.Resources> 

....

<TextBlock x:Name="txtTimeAdded" Text="{Binding DateAndTime, Converter={StaticResource RelativeTimeConverter}}" /> 

Aber ich will es nicht binden das Textfeld, stattdessen möchte ich es im Code hinter der Datei verwenden. Irgendwelche Ideen, wie man das macht?

Auf dieser Basis: http://www.jeff.wilcox.name/2011/08/august2011phonetoolkit/

Antwort

3

wie folgt aus:.

var converter = new RelativeTimeConverter(); 
var relativeTime = (string)converter.Convert(e.Result.DateTime,null,null,new System.Globalization.CultureInfo("en-US")); 

txtTimeAdded.Text = relativeTime; 

(Wenn Sie die anderen Felder verwenden, können Sie sie richtig passieren sollte, aber von Ihrer Bindung, es scheint nicht, dass Sie sind.)

+0

ok, also habe ich es versucht: var converter = new RelativeTimeConverter(); converter.Convert (e.Result.DateTime.ToLocalTime(), null, null, null); Aber ich bekomme einen NullReferenceException Fehler in der 2. Zeile. – SniperED

+1

Entfernen Sie den '.ToLocalTime()' Teil aus Ihrem Code. –

+0

Ok, also habe ich die Nullreferenz gelöst, aber jetzt habe ich das: var converter = new RelativeTimeConverter(); converter.Convert (e.Result.DateTime.ToLocalTime(), null, null, neu System.Globalization.CultureInfo ("en-US")); txtTimeAdded.Text = Konverter.ToString(); Aber jetzt der txt gibt das zurück: "Microsoft.Phone.Controls.RelativeTimeConverter" – SniperED