0

ここに単純な DataTemplate があります

<Grid.Resources>
<HierarchicalDataTemplate ItemsSource="{Binding Items}" DataType="{x:Type entities:Folder}" ItemContainerStyle="{StaticResource FileComponentItem}">
    <Grid ShowGridLines="False" HorizontalAlignment="Center">
        <TextBlock Grid.Column="0" Text="{Binding Type}" />
    </Grid>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate ...... />
</Grid.Resources>

これは TreeView に適用されます

<TreeView Grid.Row="1" BorderThickness="0" ItemsSource="{Binding}"  ItemContainerStyle="{StaticResource FlattenedTreeViewItem}"></TreeView>

スタイル FileComponentItem がエンティティのテンプレートに適用されていることに注意してください:Folder

スタイルがこのノード (フォルダ ノード) の子にのみ適用されることを受け入れます。つまり、Folder の子ノードのみがスタイルを取得します (Folder の下で展開されている項目は何でも、Folder 自体はスタイルされません)。

子ではなく、テンプレートが適用されるアイテムのスタイルを制御できるようにしたい

4

2 に答える 2

1

にスタイルを適用したためItemContainer、名前が示すように、この場合はフォルダーの子ノードになる項目に適用されます。style on your listboxしたがって、これまたはこの階層データ テンプレートが適用される任意のコントロールを適用する必要があります。

于 2011-10-09T19:15:14.490 に答える
-1

http://blogs.msdn.com/b/mikehillberg/archive/2009/10/30/treeview-and-hierarchicaldatatemplate-step-by-step.aspxを見てください。

説明と対応するサンプルは、あなたの質問を処理する必要があります.

于 2011-10-09T18:35:53.200 に答える