我正在尝试以编程方式将列添加到我的 DataGrid 中,因为它们直到运行时才知道。我已经完成了大部分工作,并且从后面的代码中添加一个“正常”列不是问题。但是,我现在尝试添加的列有一个 DataTemplate。这是 XAML:
<DataGridTemplateColumn Header="{Binding colHeader}">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Border BorderBrush="{Binding BorderColour}" BorderThickness="2">
<TextBlock Text="{Binding TextInfo}" />
</Border>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
通常我会使用这样的东西来创建一个列来添加到网格中:
Private Function AddColumn(colHeader As String, colBinding As String) As DataGridColumn
Dim textColumn As New DataGridTextColumn()
textColumn.Header = colHeader
textColumn.Binding = New Binding(colBinding)
Return textColumn
End Sub
但我对如何添加更复杂的 XAML 感到困惑。有什么建议么?
谢谢你的帮助!