WPF之Treeview控件简单用法

TreeView:表示显示在树结构中分层数据具有项目可展开和折叠的控件

TreeView 的内容是可以包含丰富内容的 TreeViewItem 控件,如 Button 和 Image 控件。TreeViewItem 可以包含一个或多 TreeViewItem 对象作为后代。TreeView 定义为 TreeViewItem 对象层次结构。

TreeView 可以通过绑定到数据源并使用 HierarchicalDataTemplate 对象填充其树。数据源的示例包括 XmlDataProvider 和 ObservableCollection <T>对象。

一个简单的效果展示

我们先绑定一个简单的xml文件:xml如下

<?xml version="1.0" encoding="utf-8" ?>
<Data xmnl="">
  <Grade Name="一年级">
    <Class Name="甲班">
      <Group Name="A组"></Group>
      <Group Name="B组"></Group>
      <Group Name="C组"></Group>
      <Group Name="D组"></Group>
    </Class>
    <Class Name="乙班">
      <Group Name="A组"></Group>
      <Group Name="B组"></Group>
      <Group Name="C组"></Group>
      <Group Name="D组"></Group>
    </Class>
  </Grade>
  <Grade Name="二年级">
    <Class Name="乙班">
      <Group Name="A组"></Group>
      <Group Name="B组"></Group>
      <Group Name="C组"></Group>
      <Group Name="D组"></Group>
    </Class>
  </Grade>
  <Grade Name="三年级">
    <Class Name="丙班">
      <Group Name="A组"></Group>
      <Group Name="B组"></Group>
      <Group Name="C组"></Group>
      <Group Name="D组"></Group>
    </Class>
  </Grade>
</Data>

然后我们在xaml文件来定义数据模板:

   <Window.Resources >
        <!--数据源-->
        <XmlDataProvider x:Key="ds" Source="XMLFile1.xml" XPath="Data/Grade"/>
        <!--年纪模板-->
        <HierarchicalDataTemplate DataType="Grade" ItemsSource="{Binding XPath=Class}">
            <TextBlock Text="{Binding XPath=@Name}"></TextBlock>
        </HierarchicalDataTemplate>
        <!--班级模板-->
        <HierarchicalDataTemplate DataType="Class" ItemsSource="{Binding XPath=Group}">
            <RadioButton GroupName="gn" Content="{Binding XPath=@Name}"></RadioButton>
        </HierarchicalDataTemplate>
        <!--小组模板-->
        <HierarchicalDataTemplate DataType="Group" ItemsSource="{Binding XPath=Student}">
            <CheckBox Content="{Binding XPath=@Name}"></CheckBox>
        </HierarchicalDataTemplate>
    </Window.Resources>

然后现在通过Treeview控件进行绑定即可:

 <TreeView  ItemsSource="{Binding Source={StaticResource ds}}" Height="122" HorizontalAlignment="Left" Margin="12,46,0,0" Name="listView1" VerticalAlignment="Top" Width="456" />


很简单吧,就那么一下就绑定好了

关于TreeView还有更多用法,这只是简单用法,更多请http://msdn.microsoft.com/zh-cn/library/vstudio/system.windows.controls.treeview.aspx

简单示例下载:http://files.cnblogs.com/BABLOVE/Treeview%E6%8E%A7%E4%BB%B6%E6%A8%A1%E6%9D%BF%E7%AE%80%E5%8D%95%E8%BF%90%E7%94%A8.rar

          

转载于:https://www.cnblogs.com/BABLOVE/p/3232155.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值