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="" HorizontalAlignment="Left" Margin="12,46,0,0" Name="listView1" VerticalAlignment="Top" Width="" />
很简单吧,就那么一下就绑定好了
关于TreeView还有更多用法,这只是简单用法,更多请http://msdn.microsoft.com/zh-cn/library/vstudio/system.windows.controls.treeview.aspx
WPF之Treeview控件简单用法的更多相关文章
- WPF中TreeView控件的使用案例
WPF总体来说还是比较方便的,其中变化最大的主要是Listview和Treeview控件,而且TreeView似乎在WPF是一个备受指责的控件,很多人说他不好用.我这个demo主要是在wpf中使用Tr ...
- WPF中TreeView控件数据绑定和后台动态添加数据(二)
写在前面:在(一)中,介绍了TreeView控件MVVM模式下数据绑定的方法.在这篇文章中,将总结给节点添加事件的方法,这样说有些不对,总之实现的效果就是点击某个节点,将出现对应于该节点的页面或者数据 ...
- WPF中TreeView控件数据绑定和后台动态添加数据(一)
数据绑定: 更新内容:补充在MVVM模式上的TreeView控件数据绑定的代码. xaml代码: <TreeView Name="syntaxTree" ItemsSourc ...
- WPF中TreeView控件SelectedItemChanged方法的MVVM绑定
问题描述:左侧treeview控件中点击不同类别的节点时,右侧的页面会显示不同的权限.比如对于My Publications,拥有Modify和Delete两种权限,对于My Subscription ...
- WPF 自定义TreeView控件样式,仿QQ联系人列表
一.前言 TreeView控件在项目中使用比较频繁,普通的TreeView并不能满足我们的需求.因此我们需要滴对TreeView进行改造.下面的内容将介绍仿QQ联系人TreeView样式及TreeVi ...
- 《WPF》Expander控件简单美化
示例图: Expander控件功能很常见, 一般用于系统左侧的菜单收缩面板. 1.主要的组成 一个头部(header) 和 一个 内容(content) 组成. <Expander Expand ...
- WPF从我炫系列4---装饰控件的用法
这一节的讲解中,我将为大家介绍WPF装饰控件的用法,主要为大家讲解一下几个控件的用法. ScrollViewer滚动条控件 Border边框控件 ViewBox自由缩放控件 1. ScrollView ...
- WPF自定义分页控件,样式自定义,简单易用
WPF自定义分页控件 做了许久伸手党,终于有机会贡献一波,搜索一下WPF分页控件,还是多,但是不太通用,主要就是样式问题,这个WPF很好解决,还有一个就是分页控件嘛,只关心几个数字的变动就行了,把页码 ...
- 抛砖引玉 【镜像控件】 WPF实现毛玻璃控件不要太简单
原文:抛砖引玉 [镜像控件] WPF实现毛玻璃控件不要太简单 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Vblegend_2013/articl ...
随机推荐
- PAT 1004. Counting Leaves (30)
A family hierarchy is usually presented by a pedigree tree. Your job is to count those family membe ...
- 安装MYSQL 出现Error 1045 access denied 的解决方法
操作系统:WINDOWS10 系统 数据库版本:mysql 5.x 提示:access denied for user 'root'@'localhost' using password yes/no ...
- 怎样克服 JavaScript 框架疲劳?
[编者按]Tero Parviainen 著有 Build Your Own AngularJS,曾两次组织 Clojure CUP 竞赛,在 Twitter 上有近两千名关注者. 在本文中.Tero ...
- ubuntu 14.04 chromium,firefox 怎样正确安装Adobe flash player
一.firefox 正确安装Adobe flash player 有时候我们须要在Ubuntu下採用手动安装一些软件,比方Firefox的Flash插件.Adobe® Flash® Player 是一 ...
- OpenGL ES2学习笔记(9)-- 转换矩阵
线性代数是计算机图形学的一块基石,本篇文章总结如何在Shader中使用矩阵来移动.缩放和旋转顶点. 代码和效果 把下面的代码复制到OpenGL Console里: import java.nio.By ...
- 【MongoDB安装和基础学习系列】
转:http://www.cnblogs.com/lipan/archive/2011/03/08/1977691.html 系列目录 MongoDB学习笔记(一) MongoDB介绍及安装 ...
- UVA - 10239 The Book-shelver's Problem
Description Problem D The Book-shelver's Problem Input: standard input Output: standard output Time ...
- 两款Mac下的视频下载利器
1 iSkysoft iTube Studio 2.jaksta mac
- cocos2dx 2.14使用UUID
1首先要清楚objective-c 与c/ c++混编的规则 关于c/c++/obj-c的混合使用 1)obj-c的编译器处理后缀为m的文件时,可以识别obj-c和c的代码,处理mm文件可以识别obj ...
- jwplayer 源代码重新编译
由于原来下载的jwplaery播放器中带有官方的播放统计信息,需要从官方加载统计js脚本,影响播放器加载速度,因此从官方github站点上下载播放器进行重新编译操作,现记录过程如下. 下载最新的jwp ...