绑定到 XML 文件的 WPF DataGrid 中的日期文本格式
Date text format in WPF DataGrid bound to XML file
我有一个数据网格绑定到 WPF 中的一个 xml 文件。我不知道如何格式化出现在我的一个 DataTextColumns 中的日期。我已经尝试过转换器和 'stringformat=d',但似乎没有任何效果。有任何想法吗?
'Birthday' 文本列中的数据显示为 '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>
您可以为生日列使用转换器,将日期转换为所需格式。
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.
}
}
我有一个数据网格绑定到 WPF 中的一个 xml 文件。我不知道如何格式化出现在我的一个 DataTextColumns 中的日期。我已经尝试过转换器和 'stringformat=d',但似乎没有任何效果。有任何想法吗?
'Birthday' 文本列中的数据显示为 '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>
您可以为生日列使用转换器,将日期转换为所需格式。
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.
}
}