DevExpress的TreeList怎样设置数据源使其显示成单列树形结构
场景
Winform控件-DevExpress18下载安装注册以及在VS中使用:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100061243
在上面已经实现DevExpress的安装之后,拖拽一个TreeList,然后怎样给其设置数据源。
DevExpress的TreeList怎样设置数据源,从实例入手:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102548490
参照上面进行设置数据源的过程。
如果要实现这样单列的树形结构应该怎样设置参数以及数据源。
注:
博客主页:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
首先新建一个Winform程序,然后拖拽一个TreeList控件
然后双击进入窗体的加载事件中,如果在别的地方设置数据源同理。
首先进行TreeList样式等的设置
#region 设置列头、节点指示器面板、表格线样式treeList1.OptionsView.ShowColumns = false; //隐藏列标头treeList1.OptionsView.ShowIndicator = false; //隐藏节点指示器面板treeList1.OptionsView.ShowHorzLines = false; //隐藏水平表格线treeList1.OptionsView.ShowVertLines = false; //隐藏垂直表格线treeList1.OptionsView.ShowIndentAsRowStyle = false;#endregion#region 初始禁用单元格选中,禁用整行选中treeList1.OptionsView.ShowFocusedFrame = true; //设置显示焦点框treeList1.OptionsSelection.EnableAppearanceFocusedCell = false; //禁用单元格选中treeList1.OptionsSelection.EnableAppearanceFocusedRow = false; //禁用正行选中#endregion#region 设置TreeList的展开折叠按钮样式和树线样式treeList1.OptionsView.ShowButtons = true; //显示展开折叠按钮treeList1.LookAndFeel.UseDefaultLookAndFeel = false; //禁用默认外观与感觉treeList1.LookAndFeel.UseWindowsXPTheme = true; //使用WindowsXP主题treeList1.TreeLineStyle = DevExpress.XtraTreeList.LineStyle.Percent50; //设置树线的样式#endregion
然后设置其单列显示
#region 添加单列DevExpress.XtraTreeList.Columns.TreeListColumn colNode = new DevExpress.XtraTreeList.Columns.TreeListColumn();colNode.Name = String.Format("col{0}", "NodeText");colNode.Caption = "NodeText";colNode.FieldName = "NodeText";colNode.VisibleIndex = 0;colNode.Visible = true;colNode.OptionsColumn.AllowEdit = false; //是否允许编辑colNode.OptionsColumn.AllowMove = false; //是否允许移动colNode.OptionsColumn.AllowMoveToCustomizationForm = false; //是否允许移动至自定义窗体colNode.OptionsColumn.AllowSort = false; //是否允许排序colNode.OptionsColumn.FixedWidth = false; //是否固定列宽colNode.OptionsColumn.ReadOnly = true; //是否只读colNode.OptionsColumn.ShowInCustomizationForm = true; //移除列后是否允许在自定义窗体中显示treeList1.Columns.Clear();treeList1.Columns.AddRange(new DevExpress.XtraTreeList.Columns.TreeListColumn[] { colNode });#endregion
注:
这里的FieldName 要与数据源中要显示的属性名相对应。
然后设置作为识别节点的主键字段,这里使用Id来区分标记每个节点;设置其父节点的标记属性。
treeList1.KeyFieldName = "Id";
treeList1.ParentFieldName = "ParentId";
为了构建数据源,我们需要新建一个DataTreeNode类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace TreeListTest
{public class DataTreeNode{private string id;private string parentId;private string nodeText;public string Id{get { return id; }set { id = value; }}public string ParentId{get { return parentId; }set { parentId = value; }}public string NodeText{get { return nodeText; }set { nodeText = value; }}}}
然后再回到上面构建数据源
DataTreeNode node1 = new DataTreeNode();node1.Id = "1";node1.ParentId = null;node1.NodeText = "1公众号";DataTreeNode node11 = new DataTreeNode();node11.Id = "2";node11.ParentId = "1";node11.NodeText = "1-1霸道的程序猿";DataTreeNode node111 = new DataTreeNode();node111.Id = "3";node111.ParentId = "2";node111.NodeText = "1-1-1大量编程资源";List<DataTreeNode> data = new List<DataTreeNode>();data.Add(node1);data.Add(node11);data.Add(node111);
然后给TreeList设置数据源
treeList1.DataSource = data;
treeList1.RefreshDataSource();
最终完整的窗体加载方法代码
private void Form1_Load(object sender, EventArgs e){#region 设置列头、节点指示器面板、表格线样式treeList1.OptionsView.ShowColumns = false; //隐藏列标头treeList1.OptionsView.ShowIndicator = false; //隐藏节点指示器面板treeList1.OptionsView.ShowHorzLines = false; //隐藏水平表格线treeList1.OptionsView.ShowVertLines = false; //隐藏垂直表格线treeList1.OptionsView.ShowIndentAsRowStyle = false;#endregion#region 初始禁用单元格选中,禁用整行选中treeList1.OptionsView.ShowFocusedFrame = true; //设置显示焦点框treeList1.OptionsSelection.EnableAppearanceFocusedCell = false; //禁用单元格选中treeList1.OptionsSelection.EnableAppearanceFocusedRow = false; //禁用正行选中#endregion#region 设置TreeList的展开折叠按钮样式和树线样式treeList1.OptionsView.ShowButtons = true; //显示展开折叠按钮treeList1.LookAndFeel.UseDefaultLookAndFeel = false; //禁用默认外观与感觉treeList1.LookAndFeel.UseWindowsXPTheme = true; //使用WindowsXP主题treeList1.TreeLineStyle = DevExpress.XtraTreeList.LineStyle.Percent50; //设置树线的样式#endregion#region 添加单列DevExpress.XtraTreeList.Columns.TreeListColumn colNode = new DevExpress.XtraTreeList.Columns.TreeListColumn();colNode.Name = String.Format("col{0}", "NodeText");colNode.Caption = "NodeText";colNode.FieldName = "NodeText";colNode.VisibleIndex = 0;colNode.Visible = true;colNode.OptionsColumn.AllowEdit = false; //是否允许编辑colNode.OptionsColumn.AllowMove = false; //是否允许移动colNode.OptionsColumn.AllowMoveToCustomizationForm = false; //是否允许移动至自定义窗体colNode.OptionsColumn.AllowSort = false; //是否允许排序colNode.OptionsColumn.FixedWidth = false; //是否固定列宽colNode.OptionsColumn.ReadOnly = true; //是否只读colNode.OptionsColumn.ShowInCustomizationForm = true; //移除列后是否允许在自定义窗体中显示treeList1.Columns.Clear();treeList1.Columns.AddRange(new DevExpress.XtraTreeList.Columns.TreeListColumn[] { colNode });#endregiontreeList1.KeyFieldName = "Id";treeList1.ParentFieldName = "ParentId";DataTreeNode node1 = new DataTreeNode();node1.Id = "1";node1.ParentId = null;node1.NodeText = "1公众号";DataTreeNode node11 = new DataTreeNode();node11.Id = "2";node11.ParentId = "1";node11.NodeText = "1-1霸道的程序猿";DataTreeNode node111 = new DataTreeNode();node111.Id = "3";node111.ParentId = "2";node111.NodeText = "1-1-1大量编程资源";List<DataTreeNode> data = new List<DataTreeNode>();data.Add(node1);data.Add(node11);data.Add(node111);treeList1.DataSource = data;treeList1.RefreshDataSource();}
DevExpress的TreeList怎样设置数据源使其显示成单列树形结构相关推荐
- DevExpress的TreeList怎样设置数据源,从实例入手
场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...
- DevExpress的TreeList怎样给树节点设置图标
场景 DevExpress的TreeList怎样设置数据源使其显示成单列树形结构: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/ ...
- DevExpress的TreeList实现自定义节点NodeCell的背景颜色和前景色
场景 DevExpress的TreeList怎样设置数据源使其显示成单列树形结构: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/ ...
- DevExpress的TreeList的常用属性设置以及常用事件
场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...
- Winform中双击DevExpress的TreeList的树形节点怎样获取当前节点
场景 DevExpress的TreeList怎样设置数据源,从实例入手: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10254 ...
- DevExpress的TreeList实现节点上添加自定义右键菜单并实现删除节点功能
场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...
- 多叉树结合JavaScript树形组件实现无限级树形结构(一种构建多级有序树形结构JSON(或XML)数据源的方法)
一.问题研究的背景和意义 在Web应用程序开发领域,基于Ajax技术的JavaScript树形组件已经被广泛使用,它用来在Html页面上展现具有层次结构的数据项.目前市场上常见的JavaScript框 ...
- dev treeview控件_在Winform开发框架中使用DevExpress的TreeList和TreeListLookupEdit控件
DevExpress提供的树形列表控件TreeList和树形下拉列表控件TreeListLookupEdit都是非常强大的一个控件,它和我们传统Winform的TreeView控件使用上有所不同,我一 ...
- DevExpress的TreeList实现显示本地文件目录并自定义右键实现删除与重命名文件
场景 使用DevExpress的TreeList显示本磁盘下文件目录并在树节点上右键实现删除与添加文件. 效果 自定义右键效果 实现 首先在包含Treelist的窗体的load方法中对treelist ...
最新文章
- 女朋友什么的都是浮云,代码才是真爱!
- AdvStringGrid 垂直居中 、水平居中
- 大数据征信应用与启示 ——以美国互联网金融公司 ZestFinance为例
- 三十四、Scrapy中的CrawlSpider
- ahjesus C# 4.0 Parallel 并行运算
- redis为什么这么火该怎么用
- 基于表达式的访问控制
- (十四)nodejs循序渐进-高性能游戏服务器框架pomelo之开发Treasures游戏
- Java 中 @Autowired与@Resource的区别
- 【转载】Linux等类Unix系统学习用书那点事儿!
- mysql 无法创建用户_无法在MySQL 5.6中创建用户
- java实现浏览器_利用Java实现网页浏览器
- 邮箱大师手机版服务器异常,邮箱大师安装步骤 邮箱大师常见问题
- linux电脑蓝牙传输文件在哪里,Linux操作系统下操作蓝牙手机的方法 -电脑资料
- 【数理统计】单因素方差分析
- r语言 svycoxph_R语言之cox回归分析
- 手机远程控制电脑方法 手机远程控制电脑软件使用教程
- 【python】实用tools
- 解决刷新页面Vuex数据丢失问题
- java程序设计 一种跨学科_(工业) 设计是 一种 跨学科 的专业。_Java程序设计2018-2019第二学期答案_学小易找答案...
热门文章
- Java进阶:@CallerSensitive详解
- vue教程1:第一个页面HelloVue快速搭建
- linux安装mysql 5.7_linux安装mysql5.7
- rails4 mysql2_ruby-on-rails – Rails 4 – Gem :: LoadError:为数据库适配器指定了“mysql2”,但gem未加载...
- Java 垃圾回收机制,你知多少??
- 简述css属性选择器的几种定义方式_CSS 属性选择器详解
- QTextEdit查找某个字符串更换颜色样式
- int linux 原子操作_linux 原子操作
- python rpc微服务框架_grpc的微服务探索实践
- jedivim加载失败,提示没有支持python3,(markdown也是如此)