我试图在DatePicker选择日期后格式化字符串。我得到的格式是“9/5/2013 12:00:00 AM”,我想要的是“9/5/2013”。有人能告诉我我在使用字符串格式做错了吗?
<DataGridTemplateColumn Header="Start">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Start, StringFormat=d}" FontFamily="Verdana" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<DatePicker SelectedDate="{Binding Start}" FontFamily="Verdana" >
<DatePicker.CalendarStyle>
<Style TargetType="Calendar">
<Setter Property="DisplayMode" Value="Month"/>
</Style>
</DatePicker.CalendarStyle>
</DatePicker>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
答案 0 :(得分:10)
尝试以下方法:
<TextBlock Text="{Binding Start, StringFormat=d}" />
这需要.NET 3.5 SP1或更高版本。
顺便说一句:StringFormat区分大小写。 “d”是short date format specifier而“D”是long date format specifier。