using System . Collections . Generic ; using System . ComponentModel ; using System . Data ; using System . Drawing ; using System . Linq ; using System . Text ; using System . Threading . Tasks ; using System . Windows . Forms ; using DevExpress . XtraEditors . Repository ; using DevExpress . XtraGrid . Columns ; using DevExpress . XtraGrid . Views . BandedGrid ; using DevExpress . XtraGrid . Views . Base ; //表头不包括数据 namespace Dev_多级表头 public partial class 表头无数据 : Form public 表头无数据 ( ) InitializeComponent ( ) ; LabelMerge ( ) ; private void Dev_二级表头 _Load ( object sender , EventArgs e ) public void LabelMerge ( ) 请将gridView1改为advBandedGridView1 using DevExpress.XtraEditors.Repository; using DevExpress.XtraGrid.Columns; using DevExpress.XtraGrid.Views.BandedGrid; using DevExpress.XtraGrid.Views.Base; //初始化 BandedGridView view = advBandedGridView1 as BandedGridView ; view . BeginUpdate ( ) ; //开始视图的编辑,防止触发其他事件 view . BeginDataUpdate ( ) ; //开始数据的编辑 view . Bands . Clear ( ) ; //修改附加选项 view . OptionsView . ShowColumnHeaders = false ; //因为有Band列了,所以把ColumnHeader隐藏 view . OptionsView . ShowGroupPanel = false ; //如果没必要分组,就把它去掉 view . OptionsView . EnableAppearanceEvenRow = false ; //是否启用偶数行外观 view . OptionsView . EnableAppearanceOddRow = true ; //是否启用奇数行外观 view . OptionsView . ShowFilterPanelMode = ShowFilterPanelMode . Never ; //是否显示过滤面板 view . OptionsCustomization . AllowColumnMoving = false ; //是否允许移动列 view . OptionsCustomization . AllowColumnResizing = false ; //是否允许调整列宽 view . OptionsCustomization . AllowGroup = false ; //是否允许分组 view . OptionsCustomization . AllowFilter = false ; //是否允许过滤 view . OptionsCustomization . AllowSort = true ; //是否允许排序 view . OptionsSelection . EnableAppearanceFocusedCell = true ; //是否焦点显示选中的单元格 view . OptionsBehavior . Editable = false ; //是否允许用户编辑单元格 //添加列标题 GridBand label1 = view . Bands . AddBand ( "个人周任务(以周日作为一周开始)每周五发送邮件回复完成情况" ) ; GridBand time = label1 . Children . AddBand ( "时间" ) ; GridBand group = label1 . Children . AddBand ( "小组" ) ; GridBand number = label1 . Children . AddBand ( "序号" ) ; GridBand content = label1 . Children . AddBand ( "内容" ) ; GridBand detailcontent = label1 . Children . AddBand ( "内容细分" ) ; GridBand finish = label1 . Children . AddBand ( "完成✔" ) ; GridBand personnel = label1 . Children . AddBand ( "人员" ) ; GridBand remark = label1 . Children . AddBand ( "备注" ) ; GridBand estimateRT = label1 . Children . AddBand ( "预估人天" ) ; //列标题对齐方式 label1 . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; time . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; group . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; number . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; content . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; detailcontent . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; finish . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; personnel . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; remark . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; estimateRT . AppearanceHeader . TextOptions . HAlignment = DevExpress . Utils . HorzAlignment . Center ; view . EndDataUpdate ( ) ; //结束数据的编辑 view . EndUpdate ( ) ; //结束视图的编辑

设计器设置
1、添加,设置每列字段
在这里插入图片描述
2、设计表头,将对应的列托上去
在这里插入图片描述

我又想实现点击列标题 排序 能够安装时间的长短正常 排序 所以自己写了一个 排序 //自定义 排序 private void CustomerSortTime(string[] str1, string[] str2, Dev Express.XtraGrid.Views.Base.CustomColumnSortEventArgs e) if (Convert.ToInt DEV 版本:12.1。用过 DEV Gridcontrol的朋友们应该大多数都知道Gridcontrol可以实现 多级 视图,即通过主视图和子视图的主外键关系来达到分级展开的效果。常用的做法一般都是先设定两个表之间的Relation后直接用控件绑定,然后控件自动会帮助我们实现分级。但是在某种业务需求的情况下需要点击主项目的时候实时获取明细,比较两种业务之间的区别在于,前者是把所有的数据查询出来,包括主项、明细项;而后者是只需查询主项即可,在展开的同时获取并加载明细,相比较而言,当然后者效率是最高的。详细看代码吧,目前有个问题还没有得到处理,当有三级的时候第三级无法获取第二级的主项ID,不清楚后续版本是否有改善。 Dev C# 是一款广泛使用的集成开发环境(IDE),专门用于 C# 和 .NET 平台的应用程序开发。它提供了丰富的功能和工具,使开发人员能够高效地编写、调试和部署 C# 程序。调试功能: Dev C# 提供了强大的调试功能,帮助开发人员在开发过程中发现和修复错误。NuGet 是一个用于共享和分发代码的包管理器,开发人员可以使用它来获取和安装各种功能强大的库和工具。代码编辑器: Dev C# 内置了功能强大的代码编辑器,支持语法高亮、自动完成和代码折叠等功能,提升了编码的效率和准确性。 前言:在后续的部分中我会讲解一些在wpf中使用 dev express控件相关的知识,为了方便没接触过这方面知识的伙伴们快速的入门和学习,这节我先就 Dev Express安装和使用进行讲解!De... 当前我们的业务中需要获取对 Dev Express中GridView表格进行过滤或 排序 后的数据内容。 直接获取GirdView表格的数据内容是最开始绑定的内容,不会跟随表格控件过滤或 排序 后而改变;我们可以直接遍历表格的内容填充到新DataTable中返回。... 一般的控件或者组件都支持按照某一列进行 排序 。但是,这种 排序 是根据数据源里的数据默认按照降序或升序 排序 的,同时这样的 排序 与字段的类型有关。 假设现在字段的类型是字符串类型 ,但是,存储的数据时数字加一些特殊的符号例如:20/1 ,1/5,1/30,0/2等等的数据。这时你不想根据字符串对它们进行 排序 , 而是想让它们按照数字进行 排序 例如:0/2,1/5,1/30,20/1。进行 排序 。 一般的 排序 ... Dev Express.Xtragrid点击Band时对子列进行 排序 根据其官网中的代码只能在第一次点击时有效,之后就无法正常 排序 ,后来发现需要前取消所有其他列的 排序 才能对当前列进行 排序 。 所以对其代码做了小小的更改. private void advBandedGridView1_MouseDown(object sender, MouseEventArgs e)