我正在尝试在我的WPF项目中实现以下代码,以便为具有动态列的DataGrid动态生成DataTemplates。 我在StackOverflow上找到了这段代码(链接)
public DataTemplate Create(Type type)
{
return (DataTemplate)XamlReader.Load(
@"<DataTemplate
xmlns=""http://schemas.microsoft.com/client/2007"">
<" + type.Name + @" Text=""{Binding " + ShowColumn + @"}""/>
</DataTemplate>"
);
}
然而,在XamlReader.Load代码上,我遇到了错误“无法将'string'转换为'System.Xaml.XamlReader'。
我尝试通过更改代码来解决这个问题:
return (DataTemplate)XamlReader.Load(XmlReader.Create(
但是我得到了关于字符串传递无效字符的错误。
同时,我不确定如何将TextBlock传递给这个代码。我想我只需要创建一个TextBlock并将其作为类型参数传递,但我得到了"无法将'System.Windows.Controls.TextBlock'转换为'System.Type'"的错误。
任何帮助都将不胜感激。