Windows phone 7 将DateTime格式化为人类可读(如消息传递应用程序)

Windows phone 7 将DateTime格式化为人类可读(如消息传递应用程序),windows-phone-7,xaml,silverlight-4.0,windows-phone-7.1,Windows Phone 7,Xaml,Silverlight 4.0,Windows Phone 7.1,如何将日期时间绑定的格式设置为与消息中心完全相同(或尽可能类似) 下面的代码块是我理想中用来显示它的代码,还是我只需要放弃使用转换器 <TextBlock TextAlignment="Right"> <TextBlock.Text> <Binding Path="Time" StringFormat="*String format here?*"/> </TextBlock.Text&g

如何将日期时间绑定的格式设置为与消息中心完全相同(或尽可能类似)

下面的代码块是我理想中用来显示它的代码,还是我只需要放弃使用转换器

<TextBlock TextAlignment="Right">
    <TextBlock.Text>
        <Binding Path="Time"
                 StringFormat="*String format here?*"/>
    </TextBlock.Text>
</TextBlock>

我的目标如下:

  • 12:17(仅限时间)如果今天
  • 星期三,18:10(天+时间),如果在7天内
  • 01/04,15:58如果超过7天

您可能需要实现一个日期到字符串转换器,该转换器将生成您要查找的特定文本,因为您需要的逻辑量超出了StringFormat属性的范围

有关更多详细信息,尤其是ThreadDateTimeConverter:-


您可能需要实现一个日期到字符串转换器,该转换器将生成您要查找的特定文本,因为您需要的逻辑量超出了StringFormat属性的范围

有关更多详细信息,尤其是ThreadDateTimeConverter:-


使用来自的日期时间转换器之一


您可以查看有关DateTimeConverters使用情况的一些信息。

使用来自的DateTimeConverters之一


您可以查看有关DateTimeConverters使用情况的一些信息。

如下文所述,您需要使用转换器,但我强烈建议您尝试自己编写此转换器。了解如何编写转换器是Silverlight/WPF/WP7开发中的一项关键技能。感谢您的建议,我同意它们将非常有用!我正在考虑写一个转换器。然而,这不是一个可以做到这一点的地方,我只是测试了工具包提供的DateTime转换器,它们执行了许多特定于区域的更改,我不想因为不按用户的意愿格式化日期而惹恼用户!可以理解(也是一个很好的考虑因素)。正如下面所说,您需要使用转换器,但我强烈建议您尝试自己编写此转换器。了解如何编写转换器是Silverlight/WPF/WP7开发中的一项关键技能。感谢您的建议,我同意它们将非常有用!我正在考虑写一个转换器。然而,这不是一个可以做到这一点的地方,我只是测试了工具包提供的DateTime转换器,它们执行了许多特定于区域的更改,我不想因为不按用户的意愿格式化日期而惹恼用户!可以理解(而且考虑周到)。