天天看点

TreeView

例子中给了五个树形菜单,第一个是简单的树形菜单,第二个是嵌套了按钮的树形菜单,第三个是父级是按钮,第四个是绑定了资源的树形,第五个是嵌套了图片的树形。

<Window x:Class="SimpleTreeView.Window1"

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

    Title="SimpleTreeView"

    >

 <Window.Resources>

    <Style TargetType="{x:Type TreeViewItem}">

      <Setter Property="Foreground" Value="Blue"/>

      <Setter Property="FontSize" Value="12"/>

    </Style>

    <Style TargetType="{x:Type TextBox}">

      <Setter Property="Width" Value="80"/>

      <Setter Property="TextWrapping" Value="Wrap"/>

    <XmlDataProvider x:Key="myEmployeeData" XPath="/EmployeeData">

      <x:XData>

        <EmployeeData xmlns="">

          <EmployeeInfo>

            <EmployeeInfoData>Employee1</EmployeeInfoData>

            <Item Type="FirstName">桂素伟</Item>

            <Item Type="LastName">刘靖凯</Item>

            <Item Type="EmployeeNumber">张三</Item>

          </EmployeeInfo>

            <EmployeeInfoData>Employee2</EmployeeInfoData>

            <Item Type="FirstName">王五</Item>

            <Item Type="LastName">赵六</Item>

            <Item Type="EmployeeNumber">李四</Item>

        </EmployeeData>

      </x:XData>

    </XmlDataProvider>  

 <HierarchicalDataTemplate DataType="EmployeeInfo"

      ItemsSource ="{Binding XPath=Item}">

      <TextBlock Text="{Binding XPath=EmployeeInfoData}" />

    </HierarchicalDataTemplate>

 </Window.Resources>

    <StackPanel>    

       <TextBlock>

        简单的树形</TextBlock>

      <TreeView>

        <TreeViewItem Header="Employee1">

          <TreeViewItem Header="Jesper"/>

          <TreeViewItem Header="Aaberg"/>

          <TreeViewItem Header="12345"/>

        </TreeViewItem>

       <TreeViewItem Header="Employee2">

          <TreeViewItem Header="Dominik"/>

          <TreeViewItem Header="Paiha"/>

          <TreeViewItem Header="98765"/>

      </TreeView>

        <TextBlock>

        组合树形1

      </TextBlock>

        <TreeView>

          <TreeViewItem Header ="Employee1">

            <TreeViewItem.Items>

              <Button>Jesper</Button>

              <Button>Aaberg</Button>

              <Button>12345</Button>

            </TreeViewItem.Items>

          </TreeViewItem>

          <TreeViewItem Header="Employee2">

              <Button>Dominik</Button>

              <Button>Paiha</Button>

              <Button>98765</Button>

        </TreeView>

       组合树形2

     <TreeView>

        <TreeViewItem>

          <TreeViewItem.Header>

            <Button>Employee1</Button>

          </TreeViewItem.Header>

            <Button>Employee2</Button>

        资源绑定的树形

      <TreeView ItemsSource="{Binding Source={StaticResource myEmployeeData},

        XPath=EmployeeInfo}"/>

      <TextBlock>

       组合树形三

        <TreeViewItem Header="Animals">

          <TreeViewItem.Items>

          <DockPanel>

            <Image Source="data\fish.png"/>

            <TextBlock Margin="5" Foreground="Brown"

                       FontSize="12">Fish</TextBlock>

          </DockPanel>

            <Image Source="data\dog.png"/>

                       FontSize="12">Dog</TextBlock>

            <Image Source="data\cat.png"/>

                       FontSize="12">Cat</TextBlock>

        </TreeViewItem.Items>

        </TreeViewItem>     

    </StackPanel>

</Window>

本文转自桂素伟51CTO博客,原文链接:http://blog.51cto.com/axzxs/150005 ,如需转载请自行联系原作者

继续阅读