ItemsSourceが異なるタイプのノードであるTreeViewがあります。AddInを使用したTreeView
class Node
class Folder : Node
class Project : Folder
3つのクラスはすべて、メインプロジェクトで定義されています。そして、私が現在使用してXAMLは次のようになります。
<TreeView Name="ProjectTreeView" SelectedItemChanged="ProjectTreeView_SelectedItemChanged">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type prj:Project}" ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Path=Name}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="{x:Type prj:Folder}" ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Path=Name}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="{x:Type prj:Node}">
<TextBlock Text="{Binding Path=Name}" />
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
私は何をしたいアドインのシステムを持っています。異なるアセンブリでは、Nodeまたは場合によってはFolderを継承する型を定義したいと思います。そして、私はこれらの新しいタイプがTreeViewで独自のレイアウトを持つことを望みます。それらの中には複数のチェックボックスやプログレスバーがあるものもあります。これらの新しい型のxamlは、型が定義されているアセンブリの一部でなければなりません。
どのように実行時に、これらの新しいノードタイプにどのテンプレートを使用するかTreeViewに伝えることができますか?
何が質問ですか? –
Oups ...修正されました! – Aleks
したがって、新しいノードタイプは異なるアセンブリになります。テンプレートを各ノードタイプのアセンブリで定義するのか、現在のアセンブリで定義するのかを指定する質問を更新できますか? –