我如何计算Listbox元素中的相对时间

时间:2014-07-03 08:30:36

标签: xaml windows-phone-7 windows-phone-8 windows-phone

我将Listbox与包含Minutes(200)的List绑定,如何显示相对时间,如:

  • 2小时前
  • 3天前
  • 1个月前

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

1 个答案:

答案 0 :(得分:2)

你需要一种称为相对时间转换器的东西。

如果你在网上搜索,你会发现很多不同的实现。一个好的肯定是Callisto toolkit的一部分。

您还可以在StackOverflow上查看类似的问题,例如this one.

使用转换器非常简单。

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

在这种情况下,RelativeTimeConverter在应用程序的某个地方被声明为静态资源。