我有一个DataGrid
.AutoGenerateColumns=True
我想将其设置ColumnHeaders
为 aTextBlock
以便标题文本可以换行。
我有:
Private Sub OnAutoGeneratingColumn(sender As System.Object, e As System.Windows.Controls.DataGridAutoGeneratingColumnEventArgs)
....
Dim tb As New TextBlock
tb.TextWrapping = TextWrapping.Wrap
tb.Text = SomeText
e.Column.Header = tb
End Sub
在其他代码中,我可以看到实际上ColumnHeader
是 a TextBlock
,并且正在做
Dim sHeader as String = DirectCast(dgtc.Header, TextBlock).Text
返回 SomeText 回来。
但是,网格在标题中不显示任何文本!另一方面,如果我设置
e.Column.Header = SomeText
标题显示正常。
我错过了什么?
我知道网站上有一些答案,但我找不到 AutoGenerateColumns = True 的答案。