2012-07-30 170 views
0

如何展開此代碼中的所有節點?展開所有TreeView節點

<TreeView ItemsSource="{Binding Path=.}" Height="220" HorizontalAlignment="Left" Margin="224,0,0,0" Name="treeView1" VerticalAlignment="Top" Width="162"> 
     <TreeView.ItemTemplate > 
      <HierarchicalDataTemplate ItemsSource="{Binding Path=Children}"> 
       <StackPanel Orientation="Horizontal"> 
        <CheckBox IsChecked="{Binding Path=IsChecked}" Focusable="False" Uid="{Binding Path=Id}" Click="CheckBox_Click"/> 
        <TextBlock Text="{Binding Path=Name}" Uid="{Binding Path=Id}"/>  
       </StackPanel> 

      </HierarchicalDataTemplate> 
     </TreeView.ItemTemplate> 
    </TreeView> 

回答

3

您可以擁有一個布爾屬性,例如IsExapnded在你的類上,它被樹視圖項綁定。將IsExapnded的默認值設置爲true,並將其與Treeview項目的IsExpanded屬性綁定。

它將展開所有節點。

或者如果你想只處理在XAML中,你可以這樣寫:

<TreeView> 
    <TreeView.ItemContainerStyle>   
     <Style TargetType="{x:Type TreeViewItem}">    
     <Setter Property="IsExpanded" Value="True" />   
     </Style>  
    </TreeView.ItemContainerStyle> 
</TreeView> 
1

使用此:

<TreeView.ItemContainerStyle> 
    <Style TargetType="TreeViewItem"> 
     <Setter Property="IsExpanded" Value="True" /> 
    </Style> 
</TreeView.ItemContainerStyle> 
+0

謝謝,這正是我需要的。 – BeerMaker 2012-07-30 13:02:11

+1

@Willem,不要回答他的問題,也許他會:)。 – Zabavsky 2012-07-30 13:43:12

相關問題