WPF转换器无法正常工作

时间:2014-04-29 03:48:22

标签: wpf

我有一个XML文件,我想绑定到WPF数据网格,我已成功完成,如下所示

我遇到的问题是日期不符合我想要的格式,并且将于1966/12/15出现,我希望这是在19/12年12月15日

我为此写了一个转换器(下面)

导入System.Windows.Data

公共类DateTimeConverter     实现System.Windows.Data.IValueConverter

Public Function Convert(ByVal value As Object,
                        ByVal targetType As System.Type,
                        ByVal parameter As Object,
                        ByVal culture As System.Globalization.CultureInfo) _
         As Object Implements System.Windows.Data.IValueConverter.Convert

    Dim DateValue As DateTime = CType(value, DateTime)

    Return DateValue.ToShortDateString

End Function

Public Function ConvertBack(ByVal value As Object,
                            ByVal targetType As System.Type,
                            ByVal parameter As Object,
                            ByVal culture As System.Globalization.CultureInfo) _
        As Object Implements System.Windows.Data.IValueConverter.ConvertBack

    Dim strValue As String = value
    Dim resultDateTime As DateTime
    If DateTime.TryParse(strValue, resultDateTime) Then
        Return resultDateTime
    End If
    Return DependencyProperty.UnsetValue

End Function

结束班

然后尝试在XAML中使用它,如下所示

                            

                    </DataGridTextColumn.Binding>
                </DataGridTextColumn>

但它会抛出错误,说它不支持从字符串转换。

有人可以告诉我这里有什么问题。

由于

1 个答案:

答案 0 :(得分:1)

您可以像Reference

一样尝试
<TextBlock Text="{Binding Date, StringFormat={}{0:dd/MM/yyyy}}" />