【发布时间】:2016-11-06 06:51:08
【问题描述】:
我需要格式化日期,所以我使用了以下内容:
<xcdg:Column Title="Registratiedatum" FieldName="RegistratieDatum" Width="1*">
<xcdg:Column.CellContentTemplate>
<DataTemplate>
<TextBlock Text="{Binding StringFormat='{}{0:dd/MM/yyyy HH:mm:ss }', TargetNullValue={x:Static System:String.Empty}}" />
</DataTemplate>
</xcdg:Column.CellContentTemplate>
</xcdg:Column>
但是,有些日期是空的,所以我希望这些字段保持为空,但我猜由于格式它看起来像这样:
01/01/0001 00:00:00
知道如何限制“非空”值的格式吗?对不起,如果这可能是太基本的问题,但我仍处于学习的初级阶段。
【问题讨论】:
-
他们真的是
null吗? DateTime 是struct,初始值正好是01/01/0001 00:00:00。 -
由于 DateTime 是一个结构,它不能为空。除此之外,您可以使用绑定转换器而不是 StringFormat。
-
在数据库中显示如下:column: [DAT_EERSTE_VERWERKING](datetime,null) 并且一些值为NULL。 @Clemens:我也在考虑使用转换器(到目前为止从未使用过),但希望可能有一个更简单的解决方案。无论如何,谢谢你们的快速回复,伙计们!
-
您的属性可能生成为
Nullable<DateTime>或DateTime?。无论如何,转换器应该在这里完成工作。 -
您可以使用自定义格式化程序,为空值返回 null stackoverflow.com/questions/7689040/…
标签: wpf datetime formatting