3

月と日だけでなく、年も考慮して生年月日列をフォーマットする多くの方法を検索して試しました。

これがとても難しいとは信じられません。

文字列「MM/dd/yyyy」をDateTimeに変換し、「/」文字を含まない文字列に変換して、最初に年を含む文字列に変換するタイプコンバーターをいくつか作成しました:「yyy/MM/dd」 . 最後のものは実際に機能しましたが、日付を「MM/dd/yyyy」形式で表示する必要があるため、使用できません。

その単一の列にカスタムソート (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>
4

2 に答える 2

8

Bind the data using a StringFormatter:

 <wpfToolkit:DataGridTextColumn Header="Your Header" Binding="{Binding TheDate,StringFormat={}\{0:dd/MM/yyyy hh:mm\}}" />
于 2012-06-06T16:15:53.490 に答える
1
<TextBlock Text="{Binding MyText,StringFormat={}\{0:dd-MM-yyyy HH:mm tt\}}" />

また、より多くのバインド文字列形式オプションを見てください。

http://msdn.microsoft.com/en-us/library/0c899ak8.aspx

于 2012-06-06T16:23:25.017 に答える