场景

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怎样设置数据源使其显示成单列树形结构相关推荐

  1. DevExpress的TreeList怎样设置数据源,从实例入手

    场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...

  2. DevExpress的TreeList怎样给树节点设置图标

    场景 DevExpress的TreeList怎样设置数据源使其显示成单列树形结构: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/ ...

  3. DevExpress的TreeList实现自定义节点NodeCell的背景颜色和前景色

    场景 DevExpress的TreeList怎样设置数据源使其显示成单列树形结构: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/ ...

  4. DevExpress的TreeList的常用属性设置以及常用事件

    场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...

  5. Winform中双击DevExpress的TreeList的树形节点怎样获取当前节点

    场景 DevExpress的TreeList怎样设置数据源,从实例入手: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10254 ...

  6. DevExpress的TreeList实现节点上添加自定义右键菜单并实现删除节点功能

    场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...

  7. 多叉树结合JavaScript树形组件实现无限级树形结构(一种构建多级有序树形结构JSON(或XML)数据源的方法)

    一.问题研究的背景和意义 在Web应用程序开发领域,基于Ajax技术的JavaScript树形组件已经被广泛使用,它用来在Html页面上展现具有层次结构的数据项.目前市场上常见的JavaScript框 ...

  8. dev treeview控件_在Winform开发框架中使用DevExpress的TreeList和TreeListLookupEdit控件

    DevExpress提供的树形列表控件TreeList和树形下拉列表控件TreeListLookupEdit都是非常强大的一个控件,它和我们传统Winform的TreeView控件使用上有所不同,我一 ...

  9. DevExpress的TreeList实现显示本地文件目录并自定义右键实现删除与重命名文件

    场景 使用DevExpress的TreeList显示本磁盘下文件目录并在树节点上右键实现删除与添加文件. 效果 自定义右键效果 实现 首先在包含Treelist的窗体的load方法中对treelist ...

最新文章

  1. 女朋友什么的都是浮云,代码才是真爱!
  2. AdvStringGrid 垂直居中 、水平居中
  3. 大数据征信应用与启示 ——以美国互联网金融公司 ZestFinance为例
  4. 三十四、Scrapy中的CrawlSpider
  5. ahjesus C# 4.0 Parallel 并行运算
  6. redis为什么这么火该怎么用
  7. 基于表达式的访问控制
  8. (十四)nodejs循序渐进-高性能游戏服务器框架pomelo之开发Treasures游戏
  9. Java 中 @Autowired与@Resource的区别
  10. 【转载】Linux等类Unix系统学习用书那点事儿!
  11. mysql 无法创建用户_无法在MySQL 5.6中创建用户
  12. java实现浏览器_利用Java实现网页浏览器
  13. 邮箱大师手机版服务器异常,邮箱大师安装步骤 邮箱大师常见问题
  14. linux电脑蓝牙传输文件在哪里,Linux操作系统下操作蓝牙手机的方法 -电脑资料
  15. 【数理统计】单因素方差分析
  16. r语言 svycoxph_R语言之cox回归分析
  17. 手机远程控制电脑方法 手机远程控制电脑软件使用教程
  18. 【python】实用tools
  19. 解决刷新页面Vuex数据丢失问题
  20. java程序设计 一种跨学科_(工业) 设计是 一种 跨学科 的专业。_Java程序设计2018-2019第二学期答案_学小易找答案...

热门文章

  1. Java进阶:@CallerSensitive详解
  2. vue教程1:第一个页面HelloVue快速搭建
  3. linux安装mysql 5.7_linux安装mysql5.7
  4. rails4 mysql2_ruby-on-rails – Rails 4 – Gem :: LoadError:为数据库适配器指定了“mysql2”,但gem未加载...
  5. Java 垃圾回收机制,你知多少??
  6. 简述css属性选择器的几种定义方式_CSS 属性选择器详解
  7. QTextEdit查找某个字符串更换颜色样式
  8. int linux 原子操作_linux 原子操作
  9. python rpc微服务框架_grpc的微服务探索实践
  10. jedivim加载失败,提示没有支持python3,(markdown也是如此)