したがって、TreeView を作成し、TreeViewItems を追加して ItemsSource をバインドする方法を知っています。これにより、OBJ
持っているすべての s を簡単に表示できますが、問題は、人々がこれらのアイテムのグループを作成したい場合です。below を持つのと同じことを可能にする DataTemplate を作成するにはどうすればよいData Warehouse
ですか?ただし、ユーザーが選択したアイテムのコレクションとして表示されますか?
<TreeView.Items>
<TreeViewItem Header="Data Warehouse">
<TreeViewItem.Items>
<TreeViewItem Header="Platforms">
<TreeViewItem.Items>
<TreeViewItem ItemsSource="{Binding OBJS, Converter={StaticResource COBJSourceConverter}, ConverterParameter=Fixed}">
<TreeViewItem.Header>
<TextBlock Text="{Binding RelativeSource={RelativeSource Self},
Path=Parent.Items.Count,
StringFormat=Fixed Devices ({0})}">
</TextBlock>
</TreeViewItem.Header>
</TreeViewItem>
<TreeViewItem ItemsSource="{Binding OBJS, Converter={StaticResource COBJSourceConverter}, ConverterParameter=Mobile}">
<TreeViewItem.Header>
<TextBlock Text="{Binding RelativeSource={RelativeSource Self},
Path=Parent.Items.Count,
StringFormat=Mobile Devices ({0})}">
</TextBlock>
</TreeViewItem.Header>
</TreeViewItem>
</TreeViewItem.Items>
</TreeViewItem>
<TreeViewItem ItemsSource="{Binding OBJS, Converter={StaticResource CollectionSourceConverter}, ConverterParameter=Public}" Header="Public" />
<TreeViewItem ItemsSource="{Binding OBJS, Converter={StaticResource CollectionSourceConverter}, ConverterParameter=Shared}" Header="Shared" />
<TreeViewItem ItemsSource="{Binding OBJS, Converter={StaticResource CollectionSourceConverter}, ConverterParameter=Private}" Header="Private" />
</TreeView.Items>
だから、これまでのところ私は以下を持っています:
<HierarchicalDataTemplate DataType="{x:Type EntityType:COLLECTIONS}">
<TextBlock Text="{Binding COLLECTIONNAME}" />
</HierarchicalDataTemplate>
しかし、これは私が立ち往生する場所です。s を設定するItemTemplate
と、TreeViewItem
s の1 つのセットを持ち、個々のアイテムを適切な TreeViewItem に入れる代わりに、TreeViewItem
すべてのxアイテムに対して s が設定されます。ItemsSource
TreeViewItem
TreeView の結果の例:
- データ ウェアハウス <-- これにはインベントリ全体が含まれます
- プラットフォーム
- 固定デバイス (X)
- 固定デバイス A
- 固定デバイス B
- モバイル デバイス (X)
- モバイル デバイス A
- モバイル デバイス B
- 固定デバイス (X)
- プラットフォーム
- Public <-- このディレクトリは、ユーザーが選択したデバイスのコレクションを保持するパブリックです。
- MyCollectionA <-- 「A」個のデバイスを保持します (コレクション A のすべてのデバイスは単一のリストにあります
- 固定デバイス (1)
- 固定デバイス A
- モバイル デバイス (1)
- モバイル デバイス A
- 固定デバイス (1)
- マイコレクションB
- 固定デバイス (1)
- 固定デバイス B
- モバイル デバイス (1)
- モバイル デバイス B
- 固定デバイス (1)
- MyCollectionA <-- 「A」個のデバイスを保持します (コレクション A のすべてのデバイスは単一のリストにあります
ご覧のとおり、さまざまなタイプの場所を固定してから、個々のアイテムを正しい場所に配置したいと考えています。