XAML で記述された WPFDataGrid
を C# に変換しています (聞かないでください)。
次のようになります (簡潔にするために一部のプロパティは省略されています)。
var Card = new DataGrid() {
Background = Brushes.LightYellow,
BorderBrush = Brushes.DimGray,
ColumnWidth = new DataGridLength(100),
Columns = {
new DataGridTextColumn() {
Binding = new Binding("In"),
Header = "In"
},
new DataGridTextColumn() {
Binding = new Binding("Out"),
Header = "Out"
},
new DataGridTextColumn() {
Binding = new Binding("Hours"),
Header = "Hours"
}
},
RowHeaderTemplate = new DataTemplate(typeof(DataGridRowHeader)) {
VisualTree = Days
},
RowHeaderWidth = 115,
RowHeight = 50
};
Days
次のように設定されています:
var Days = new FrameworkElementFactory(typeof(TextBlock));
Days.SetBinding(TextBlock.TextProperty, new Binding("Day"));
Days.SetValue(TextBlock.BackgroundProperty, Brushes.Lime);
実行すると、は空白になります (およびDataGrid
ではありません)。RowHeader
LightYellow
Lime
私Card.RowHeaderTemplate.VisualTree = Days;
も試してみましたが、役に立ちませんでした。
どこが間違っていますか?プログラムでどのように設定できRowHeaderTemplate
ますか?