私がこのようなものを持っているとしましょう:
public class TopicFolder
{
#region Constants and Fields
private readonly List<TopicInfo> folderContent;
private readonly List<TopicFolder> subFolders;
#endregion
...
}
そのようなタイプのデータテンプレートを実装するにはどうすればよいですか?現在私は持っています:
<HierarchicalDataTemplate DataType="{x:Type local:TopicFolder}" ItemsSource="{Binding SubFolders}" >
<TextBlock Text="{Binding Name}"/>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="{x:Type local:TopicInfo}" ItemsSource="{Binding FolderContent}">
<TextBlock Text="{Binding TopicName}"/>
</HierarchicalDataTemplate>
ただし、これにはフォルダの内容は表示されません。2番目のテンプレートDataTypeはlocal:TopicFolderである必要があるようですが、これはWPFでは許可されていません。
助言がありますか?
UPD:TreeViewは次のようにObservableCollection <TopicFolder>にバインドされます:
ItemsSource="{Binding Path=Folders}"
PS:それは間違いなくプライベート/パブリック/プロパティの問題ではありません。投稿されたフィールドに対応するパブリックプロパティがあります。出力にバインディングエラーはありません。FolderContentアイテムが表示されていないだけです。