我有一个数据网格绑定到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>
答案 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.
}
}