【问题标题】:Custom date format in silverlight bindingsilverlight 绑定中的自定义日期格式
【发布时间】:2013-03-15 14:07:29
【问题描述】:

尝试使用 Silverlight 5 在我的 XAML 中格式化日期时间绑定值,如下所示:

<TextBlock Text="{Binding ContactDate, Mode=OneWay, StringFormat={}{0:'dd/MM/yyyy'}}" Margin="5,0" />

我收到以下错误: 标记扩展结束后出现意外的令牌。

这让我发疯了!

【问题讨论】:

    标签: silverlight format-string


    【解决方案1】:

    尝试: Text="{Binding ContactDate, Mode=OneWay, StringFormat='{}{0:dd/MM/yyyy}'}"

    除非您的意思是要在日期字符串之前和之后使用单引号。

    【讨论】:

    • 不,我不想显示单引号。您的格式字符串至少编译没有错误,但现在它只是忽略它。该值仍显示为 2012/02/29 00:00:00,完全未格式化。
    • 在这种情况下,在 DataBinding 有机会应用格式之前,您的代码中某处可能会将 ContactDate 属性转换为字符串,因为我使用的是非常相似的绑定。您能否在绑定上放置调试断点并验证源在数据绑定时是否为 DateTime?
    • 谢谢 Boluc,你是对的。我实际上是故意将其转换为使用 linq 查询动态创建的自定义实体中的字符串。最终不得不编写一个小型转换器,因为 ContactDate 中经常会有空值,这是我让它工作的唯一方法。
    猜你喜欢
    • 1970-01-01
    • 2014-08-20
    • 2021-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-10
    • 2014-08-17
    相关资源
    最近更新 更多