zoukankan      html  css  js  c++  java
  • 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

              

  • 相关阅读:
    xp下双开3389源码
    批处理加密解密原理
    Durango框架开源
    细说PHP5.3.4变量的引用赋值
    svnversion
    sqlite 的使用
    message日志_默认是一周一个日志,保存4周
    Smartmontool 使用
    NETRA之数据库处理
    mysql 日志转
  • 原文地址:https://www.cnblogs.com/BABLOVE/p/3232155.html
Copyright © 2011-2022 走看看