WPF/C#.Net 4.0 を使用して 4 レベルのツリービューを実装しようとしました。4 レベルすべてをロードしますが、4 番目のレベルを選択できず、3 番目のレベルを選択すると 4 番目のレベルのグループが選択されます。Continent->Country->District->Artifacts は 1 つの構造ですが、別の構造があります。 Continent->Products->Artifacts
リソース DataTemplates->
<DataTemplate x:Key="DistrictTemplates">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=ArtifactName}" />
</StackPanel>
</DataTemplate>
<DataTemplate x:Key="CountryTemplate">
<TreeViewItem ItemsSource="{Binding Path=District}"
ItemTemplate=" {StaticResource DistrictTemplates}"
Header="{Binding Path=Code}">
</TreeViewItem>
</DataTemplate>
TreeView コード->
<TreeView Name="treeExplorer" MouseDoubleClick="TreeView_MouseDoubleClick" SelectedItemChanged="treeExplorer_SelectedItemChanged">
<TreeViewItem Name="tviDefinition" IsExpanded="True" Header="Continent">
<TreeViewItem ItemsSource="{Binding Path=Country}" ItemTemplate="{StaticResource CountryTemplate}" Header="Country" />
</TreeViewItem>
</TreeView>
TreeView.Resources 内でインライン テンプレートを使用することはできません。また、この HierarchicalDataTemplate sine を使用できるかどうかについても混乱しています。Country.Districts.ArtifactName を呼び出すことはできず、2 つの階層を取得しましたが、Country.Districts( )そして、Districtsにはコードプロパティがあり、コードを使用してアーティファクトを見つけることができます。そして、usercontrol.resources内でデータテンプレートを使用するにはどうすればよいですか?