2014-07-03 37 views
1

我綁定與包含記錄(200)的列表的列表框相對時間,如何顯示相對時間,如:如何計算在列表框元件

  • 1小時以前
  • 3天以前
  • 1個月前

    <ListBox x:Name="listBox"> 
    <ListBox.ItemTemplate> 
        <DataTemplate > 
    
        <TextBlock x:Name="TxtDuration" Text="{Binding Duration}"/> 
    
        </DataTemplate> 
    </ListBox.ItemTemplate> 
    

回答

2

您需要一種稱爲相對時間轉換器的東西。

如果你在線搜索,你會發現很多不同的實現。好的一個絕對是Callisto toolkit的一部分。

您還可以檢查出諸如this one.

在計算器上類似的問題使用轉換器是真的簡單。

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

在這種情況下,RelativeTimeConverter被聲明爲應用程序中某處的靜態資源。

+0

感謝您的回覆,我嘗試使用Callisto RelativeTimeConverter,但它僅用於Windows 8 Metro應用程序,此轉換器中使用的名稱空間在Windows 8手機應用程序中不可用,請使用Windows.ApplicationModel建議 。資源; 使用Windows.ApplicationModel.Resources.Core; using Windows.UI.Xaml.Data; – Veejay

+0

也RelativeTimeConverter需要在dateformat輸入,我有輸入分鐘前例如(200) – Veejay

+0

搜索互聯網後,我發現這篇文章,它給出了週轉解決方案 http://www.geekchamp.com/articles/windows-phone-toolkit-日期時間轉換器 但是RelativeTimeConverter需要在Dateformat中輸入,並且我有輸入分鐘例如(200)如何將它轉換爲dateformat之前餵養RelativeTimeConverter,請建議 – Veejay