如何格式化WPFToolkit.DataGridTextColumn的完整日期?

Nic*_*ckV 3 sorting wpf datetime datagrid wpftoolkit

我搜索并尝试了许多方法来格式化出生日期列不仅按月和日,而且还考虑到年.

我不敢相信这很难做到.

我创建了几个类型转换器,将字符串"MM/dd/yyyy"转换为DateTime,尝试转换为不带"/"字符的字符串,并转换为年份优先的字符串:"yyy/MM/dd" .最后一个实际工作,但我不能使用它,因为日期必须以"MM/dd/yyyy"格式显示.

我找不到在该列上轻松实现custon排序(ICoparable)的方法.

我还搜索了Stack Overflow和其他网站,我很惊讶我找不到答案.

非常感谢您的帮助!

这是我的一些代码:

<dg:DataGrid Grid.Row="10" Grid.ColumnSpan="3" ItemsSource="{Binding Path=Members}"
  Visibility="{Binding Path=ShowMemberResults, Converter={StaticResource boolTovisConverter}}"
  SelectionMode="Single" SelectionUnit="FullRow"
  HorizontalAlignment="Left"
  Name="MemberGrid" AutoGenerateColumns="False" IsReadOnly="True"
  SelectedItem="{Binding Path=SelectedMemberItem}" MaxHeight="200">
  <dg:DataGrid.Columns>
    <dg:DataGridTextColumn Header="Member ID" Binding="{Binding Path=MemberID}" Width="100"/>
    <dg:DataGridTextColumn Header="First Name" Binding="{Binding Path=FirstName}" Width="100"/>
    <dg:DataGridTextColumn Header="Middle" Binding="{Binding Path=MiddleInitial}" Width="50"/>
    <dg:DataGridTextColumn Header="Last Name" Binding="{Binding Path=LastName}" Width="100"/>
    <dg:DataGridTextColumn Header="Suffix" Binding="{Binding Path=Title}" Width="50"/>
    <dg:DataGridTextColumn Header="DOB" Binding="{Binding Path=DOB, Converter={StaticResource dateConverter}}" Width="80"/>
    <dg:DataGridTextColumn Header="Relationship" Binding="{Binding Path=Relationship}" Width="100"/>
    <dg:DataGridTextColumn Header="Group Name" Binding="{Binding Path=GroupName}" Width="225"/>
    <dg:DataGridTextColumn Header="Address " Binding="{Binding Path=Addr1}" Width="180"/>
    <dg:DataGridTextColumn Header="City" Binding="{Binding Path=City}" Width="120"/>
    <dg:DataGridTextColumn Header="State" Binding="{Binding Path=State}" Width="45"/>
    <dg:DataGridTextColumn Header="Zip" Binding="{Binding Path=Zip}" Width="50"/>
    <dg:DataGridTextColumn Header="SSN" Binding="{Binding Path=SSN}" Width="100"/>
    <dg:DataGridTextColumn Header="Family Link ID" Binding="{Binding Path=FamilyLinkID}" Width="100"/>
  </dg:DataGrid.Columns>
</dg:DataGrid>
Run Code Online (Sandbox Code Playgroud)

Mag*_*son 8

使用StringFormatter绑定数据:

 <wpfToolkit:DataGridTextColumn Header="Your Header" Binding="{Binding TheDate,StringFormat={}\{0:dd/MM/yyyy hh:mm\}}" />
Run Code Online (Sandbox Code Playgroud)