Fork me on GitHub

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"/>

    </Style>

    <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>

          <EmployeeInfo>

            <EmployeeInfoData>Employee2</EmployeeInfoData>

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

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

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

          </EmployeeInfo>

        </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"/>

        </TreeViewItem>

      </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">

            <TreeViewItem.Items>

              <Button>Dominik</Button>

              <Button>Paiha</Button>

              <Button>98765</Button>

            </TreeViewItem.Items>

          </TreeViewItem>

        </TreeView>

        <TextBlock>

       组合树形2

      </TextBlock>

     <TreeView>

        <TreeViewItem>

          <TreeViewItem.Header>

            <Button>Employee1</Button>

          </TreeViewItem.Header>

          <TreeViewItem Header="Jesper"/>

          <TreeViewItem Header="Aaberg"/>

          <TreeViewItem Header="12345"/>

        </TreeViewItem>

        <TreeViewItem>

          <TreeViewItem.Header>

            <Button>Employee2</Button>

          </TreeViewItem.Header>

          <TreeViewItem Header="Dominik"/>

          <TreeViewItem Header="Paiha"/>

          <TreeViewItem Header="98765"/>

        </TreeViewItem>

      </TreeView>

        <TextBlock>

        资源绑定的树形

      </TextBlock>

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

        XPath=EmployeeInfo}"/>

      <TextBlock>

       组合树形三

      </TextBlock>

      <TreeView>

        <TreeViewItem Header="Animals">

          <TreeViewItem.Items>

          <DockPanel>

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

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

                       FontSize="12">Fish</TextBlock>

          </DockPanel>

          <DockPanel>

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

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

                       FontSize="12">Dog</TextBlock>

          </DockPanel>

          <DockPanel>

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

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

                       FontSize="12">Cat</TextBlock>

          </DockPanel>

        </TreeViewItem.Items>

        </TreeViewItem>     

      </TreeView>

 

    </StackPanel>

</Window>

posted @ 2007-05-07 13:55  桂素伟  阅读(847)  评论(0编辑  收藏  举报