データバインディングを介してデータセットからコンテンツ(ネストされたTreeViewItems)が生成されるTreeViewがありますが、これはすべて正常に機能しているようです。私が直面している問題は、コードで 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 を掘り下げることなく)。
ありがとう、ジェームズ