WPF DataGrid中的日期文本格式绑定到XML文件

时间:2015-04-21 13:46:15

标签: c# xml wpf date datagrid

我有一个数据网格绑定到WPF中的xml文件。我无法弄清楚如何格式化我的一个DataTextColumns中显示的日期。我尝试过转换器和'stringformat = d',但似乎没有任何效果。有任何想法吗?

“生日”文本列中的数据显示为“dd / mm / yyyy hh:mm:ss AM / PM”,因为它是存储在xml文件中的方式。

但我希望它显示为'dd / mm / yyyy'。

这是我的xaml。这是一个简单的绑定,不需要任何代码。

<DataGrid Name="currentCrewGrid" DataContext="{StaticResource CrewInfo}" ItemsSource="{Binding XPath=/Names/Name[@isActive\=\'True\']}" AutoGenerateColumns="False" >
 <DataGrid.Columns>
   <DataGridTextColumn IsReadOnly="True" Header="Birthday" Binding="{Binding XPath=Birthday}"/>
 </DataGrid.Columns> 
</DataGrid>

1 个答案:

答案 0 :(得分:1)

您可以将Converter用作生日列,将日期转换为所需格式。

Binding="{Binding XPath=Birthday, Converter={StaticResource birthdayConverter}}"

public class BirthdayConverter : IValueConverter
 {
     public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
     {
         //Convert date to desired format.
     }

     public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
     {
        // Convert back.
     }
 }