我有一个 TreeView,其内容(嵌套的 TreeViewItems)是通过数据绑定从数据集生成的,这一切似乎都工作正常。我遇到的问题是,当我尝试在代码中操作 TreeViewItem 标头的内容时,Header 属性返回生成 TreeViewItem 的 DataRowView,而不是像我预期的那样由模板生成的控件。
这是我用来生成 TreeViewItems 的模板示例:
<DataTemplate x:Key="seasonTreeViewItemTemplate">
<TreeViewItem>
<TreeViewItem.Header>
<CheckBox Content="{Binding Path=Row.SeasonID}" Tag="{Binding}" ToolTip="{Binding Path=Row.Title}" IsEnabled="{StaticResource seasonPermitted}" Checked="CheckBox_Checked" Unchecked="CheckBox_Unchecked" />
</TreeViewItem.Header>
<TreeViewItem Header="Championships" ItemTemplate="{StaticResource championshipTreeViewItemTemplate}">
<TreeViewItem.ItemsSource>
<Binding Path="Row" ConverterParameter="FK_Championship_Season">
<Binding.Converter>
<local:RowChildrenConverter />
</Binding.Converter>
</Binding>
</TreeViewItem.ItemsSource>
</TreeViewItem>
</TreeViewItem>
</DataTemplate>
谁能指出我哪里出错并建议我如何访问标题复选框(如果可能的话,最好不要深入研究 VisualTree)?
谢谢,詹姆斯