2015-10-30 54 views
0

我使用Datetime.Now創建Datetime對象,並將其作爲類的屬性。綁定中的Datetime對象的StringFormat在小時和分鐘時返回0

當我結合這對網格視圖:

<GridViewColumn Header="Date" Width="120" DisplayMemberBinding="{Binding transaction_date1, StringFormat=HH:mm}" /> 

結果總是00:00。

當我調試代碼時,我看到Datetime對象的小時,分​​鍾等屬性包含非零值。 我認爲在這種情況下StringFormat從日期時間對象中獲取具有正確日期但始終以12:00:00 AM爲小時的Date對象。

有沒有辦法通過它並在我的窗口中顯示正確的小時和分鐘?

預先感謝您!

回答

1

它改成這樣:

<GridViewColumn Header="Date" Width="120" DisplayMemberBinding="{Binding transaction_date1, StringFormat='{}{0:HH:mm}'}" /> 

如果你想使用StringFormat與自定義格式,那麼你必須要使用此方法,您提供的格式字符串帕拉姆指數。它等效於:

string.Format("{0:HH:mm}", transaction_date1); 

在開始{}兩個花括號的XAML分析器的指令忽略字符串中找到進一步的花括號。因此,您可以在一個綁定語句中多次使用日期值:

DisplayMemberBinding="{Binding transaction_date1, StringFormat=`{} Your date-time is {0:dd/mm/yy} at approx. {0:HH} hours and {0:mm} minutes`}" 
+0

感謝您的澄清。我還發現時間價值在達到約束之前就已經消失了。但你的回答幫助我解決下一個問題,我會:) – spagi