这不是一个完整的答案,只是一个让你开始的提示。
<TreeView ItemsSource="{Binding DataStoreTypes}">
<TreeView.Resources>
<HierarchicalDataTemplate
DataType="{x:Type DataStoreType}"
ItemsSource="{Binding Converter={StaticResource TypeToEntriesConverter}}">
<TextBlock Text="{Binding}"/>
</HierarchicalDataTemplate>
<DataTemplate
DataType="{x:Type DataStoreEntry}">
<TextBlock Text="{Binding}"/>
</DataTemplate>
</TreeView.Resources>
</TreeView>
现在,您所要做的就是实现一个IValueConverter来转换
DataStoreType
给一个
IEnumerable<DataStoreEntry>
TypeToEntriesConverter类型
.