XAML Treeview,如何水平显示节点而不是垂直显示节点

时间:2009-12-06 19:38:53

标签: c# wpf xaml layout treeview

我是XAML的新手,我正试图想办法如何水平而不是垂直地显示TreeView节点,即

Header 1
  Item 1 Item 2 item 3
Header 2
  Item 4

而不是

Header 1
  Item 1
  Item 2
  Item 3
Header 2
  Item 4   

它并不像看起来那么简单,我能够让标题横向移动......

下面的XAML代码

<Grid >      
<TreeView ItemsSource="{Binding Children}">
    <TreeView.Resources>
        <HierarchicalDataTemplate DataType="{x:Type local:ApplicationListViewModel}"
                                  ItemsSource="{Binding Children}">
            <StackPanel Orientation="Horizontal">
                <TextBlock Text="{Binding Title}"/>
            </StackPanel>
        </HierarchicalDataTemplate>
        <DataTemplate DataType="{x:Type local:ApplicationViewModel}" >                    
            <StackPanel Orientation="Horizontal">
                <ListView>                        
                    <Button>
                        <Image Source="{Binding Image}"/>
                    </Button>
                </ListView>
            </StackPanel>
        </DataTemplate>
    </TreeView.Resources>
</TreeView>        


                                                                                                           
                                     
                                                                                                                                               

如果知道我正在尝试用我的代码完成什么,那么基本上我正在尝试组织一系列类别的应用程序。为每个应用程序类别生成一个容器(如列表框)。

我的数据结构是

Application Collection
   Application List (1-> Many)
      Application (1-> Many)

1 个答案:

答案 0 :(得分:2)

有一个代码项目article,它解释了如何做到这一点......希望它有所帮助:)