C# 绑定时使用的转换器(无路径)的值为DataRow

C# 绑定时使用的转换器(无路径)的值为DataRow,c#,wpf,C#,Wpf,我正在从DataTable自动生成网格,其中一些列需要转换为比文本更复杂的布局。我已经成功地在需要的地方动态应用了DataTemplates,但是我无法运行转换器(IValueConverter),因为给定的值是DataRow,所以我无法判断我需要从数组中获取哪一段数据 我似乎不知道我做错了什么 以下是相关代码: <DataTemplate x:Key="DateColumn"> <ContentControl Content="{Binding Converter={

我正在从DataTable自动生成网格,其中一些列需要转换为比文本更复杂的布局。我已经成功地在需要的地方动态应用了DataTemplates,但是我无法运行转换器(IValueConverter),因为给定的值是DataRow,所以我无法判断我需要从数组中获取哪一段数据

我似乎不知道我做错了什么

以下是相关代码:

<DataTemplate x:Key="DateColumn">
    <ContentControl Content="{Binding Converter={StaticResource DateConverter}}" />
</DataTemplate>

非常感谢您的帮助。

我可以通过在代码中设置转换器而不是在xaml中选择模板来实现这一点。下面是它现在的样子:

column.DataMemberBinding.Converter = new DateConverter();

请注意,这是针对Telerik网格的。我相信普通数据网格上的语法是“
Binding.Converter
”而不是“
DataMemberBinding.Converter

,这是因为此时的DataContext是DataRow。您需要告诉绑定将其特定部分传递到转换器。您在标题“with no path”中提到过,为什么不给它一个路径?@Tim没有路径,因为它是从动态数据表绑定的。但是,如果您需要使用在xaml中设置的模板,例如如果您需要将数据转换为特定图像,则这不起作用。
column.DataMemberBinding.Converter = new DateConverter();