2011-08-08 3 views
12

나는 개체 컬렉션에 바인딩 된 listview 있습니다. 속성 중 하나는 startDate라는 DateTime 객체입니다. 표준 1/1/2001 1:00:00 PM 형식으로 표시됩니다.WPF/C# - 목록보기에 날짜 형식 적용

표시 목적으로 만 날짜를 yyyy-MM-dd HH : mm : ss.fff 형식으로 넣으 려합니다. 위의 원하는 형식으로 표시하면서 기본 DateTime 개체를 그대로 유지하는 방법이 있습니까? XAML에서 객체에 표시 속성을 추가하는 것과는 대조적으로이 방법을 선호합니다.

개체는 INotifyPropertyChanged 인터페이스를 구현합니다.

<ListView x:Name="lvBatches" 
        SelectionMode="Single" 
        Margin="12,73,349,61" 
        Background="WhiteSmoke" 
        SelectionChanged="lvBatches_SelectionChanged" 
        ToolTip="Click on the column headers to sort by that column" 
        FontSize="10pt" 
        ItemContainerStyle="{StaticResource itemStyle}" 
        ItemsSource="{Binding batchCollection}"> 
<!-- ... --> 
    <GridViewColumn x:Name="colStart" 
        Width="200" 
        DisplayMemberBinding="{Binding startDate}"> 
     <GridViewColumnHeader Content="Start Date" 
           Click="GridViewColumnHeader_Click"/> 
    </GridViewColumn> 

미리 감사드립니다.

답변

36

간단하게 바인딩의 StringFormat을 변경하십시오.

DisplayMemberBinding="{Binding Path=startDate, StringFormat='yyyy-MM-dd HH:mm:ss.fff'}" 
+0

Jeez - 나는 그것을 시도했지만 그 문자열을 작은 따옴표로 묶지 않았습니다. 신기한 실수. 고마워, 레이. – Yatrix