1.设计器方式创建

1.点击“Change view”>>然后在选中“Convert to”选项>>最后选中点击“BandedGridView”。

具体操作如下图所示:

2.点击上图的“Run Designer”设计视图按钮后,我们先去添加列,选中“Columns”列。

具体操作如下图所示:

  

3.点击“Grid Designer Bands”设计视图中的“Bands”给列加一个大列把上面我们添加列分配到具体的大列中

具体操作如下图所示:

4.设计和运行效果展示:

  

2.代码创建

1.具体实现代码如下:

 1         //引用:using DevExpress.XtraGrid.Views.BandedGrid;
2 private GridBand gridBand1;
3 private GridBand gridBand2;
4
5 //创建复合表头 分别添加了“基本信息”和“学校信息”这两个复合表头
6 private void CreateGridBand()
7 {
8 gridBand1 = new GridBand();//实例化“GridBand”
9 gridBand1.AppearanceHeader.Options.UseTextOptions = true;//允许更改列的“外观”
10 gridBand1.AppearanceHeader.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;//让列居中显示
11 gridBand1.Caption = "基本信息";//列的显示名称
12 gridBand1.Name = "gridBand1";//列名称
13 gridBand1.OptionsBand.FixedWidth = true;//固定列的宽度
14 gridBand1.VisibleIndex = 0;//下标
15 gridBand1.Width = 112;//宽度
16 this.bandedGridView1.Bands.Add(gridBand1);//把创建好的“GridBand”点击到视图中
17
18 gridBand2 = new GridBand();
19 gridBand2.AppearanceHeader.Options.UseTextOptions = true;
20 gridBand2.AppearanceHeader.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
21 gridBand2.Caption = "学校信息";
22 gridBand2.Name = "gridBand2";
23 gridBand2.OptionsBand.FixedWidth = true;
24 gridBand2.VisibleIndex = 1;
25 gridBand2.Width = 93;
26 this.bandedGridView1.Bands.Add(gridBand2);
27 }

创建复合表头

 1         //创建列并把列分配到指定的“基本信息”和“学校信息”这两个复合表头下
2 private void CreateColumn()
3 {
4 /*
5 * 先创建列,在设置列中的属性是因为这样才能控制列的宽度。
6 * 如果实例化创建列并同时设置列的属性,那么列中设置的宽度就不能正常显示
7 */
8 #region 实例化并创建列
9 BandedGridColumn name = new BandedGridColumn();
10 this.bandedGridView1.Columns.Add(name);
11 BandedGridColumn age = new BandedGridColumn();
12 this.bandedGridView1.Columns.Add(age);
13 BandedGridColumn gender = new BandedGridColumn();
14 this.bandedGridView1.Columns.Add(gender);
15 BandedGridColumn school = new BandedGridColumn();
16 this.bandedGridView1.Columns.Add(school);
17 BandedGridColumn classs = new BandedGridColumn();
18 this.bandedGridView1.Columns.Add(classs);
19 #endregion
20
21 #region 设置列的属性
22 name.Caption = " 姓名";//显示名称
23 name.FieldName = "name";//数据源名称
24 name.MinWidth = 50;//最小宽度
25 name.Visible = true;//是否显示
26 name.OptionsColumn.AllowEdit = false;// 是否能编辑单元格
27 this.gridBand1.Columns.Add(name);//给指定的“GridBand”("基本信息")添加列
28
29 age.Caption = "年龄";
30 age.FieldName = "age";
31 age.MinWidth = 45;
32 age.Visible = true;
33 this.gridBand1.Columns.Add(age);
34
35 gender.Caption = "性别";
36 gender.FieldName = "gender";
37 gender.MinWidth = 45;
38 gender.Visible = true;
39 this.gridBand1.Columns.Add(gender);
40
41 school.Caption = "学校";
42 school.FieldName = "school";
43 school.MinWidth = 100;
44 school.Visible = true;
45 this.gridBand2.Columns.Add(school);
46
47 classs.Caption = "班级";
48 classs.FieldName = "classs";
49 classs.MinWidth = 80;
50 classs.Visible = true;
51 this.gridBand2.Columns.Add(classs);
52 #endregion
53 }

创建列

 1         //创建DataTable并赋值
2 private void CreateData()
3 {
4 DataTable dt = new DataTable();
5 dt.Columns.Add("name", Type.GetType("System.String"));
6 dt.Columns.Add("age", Type.GetType("System.String"));
7 dt.Columns.Add("gender", Type.GetType("System.String"));
8 dt.Columns.Add("school", Type.GetType("System.String"));
9 dt.Columns.Add("classs", Type.GetType("System.String"));
10 DataRow row = dt.NewRow();
11 row["name"] = "张三";
12 row["age"] = "18";
13 row["gender"] = "男";
14 row["school"] = "理工大学";
15 row["classs"] = "天才2021级";
16 dt.Rows.InsertAt(row, 0);
17 gridControl1.DataSource = dt;//表格获取数据源
18 }

“gridControl1”表格获取数据源

2.效果图如下:

搜索

复制

C# DevExpress GridControl中BandedGridView表格使用的更多相关文章

  1. Devexpress GridControl中combobox级联显示 z

    http://minmin86121.blog.163.com/blog/static/4968115720143163533356/ 在 使用GridControl时,可能会有需求要求某2列显示co ...

  2. 在DevExpress GridControl中添加进度条控件 z

    首先可以使用 DevExpress GridControl 自带的进度条控件. 但是我要用一个方法来设置所有的单元格进度,而不是每个单元格都要设置一遍,同时我想要根据进度值不同,进度条显示不同的颜色. ...

  3. Devexpress GridControl中 repositoryItemCheckEdit作为选择列以及作为显示列的使用方法

    一.在gridcontrol列表控件中使用单选框作为选择列,这里有两种方式. 方式一:选择gridcontrol控件的Run Designer按钮,添加一列,设置该列的ColumnEdit为check ...

  4. DevExpress控件GridControl中的布局详解 【转】

    DevExpress控件GridControl中的布局详解 [转] 2012-10-24 13:27:28|  分类: devexpress |  标签:devexpress  |举报|字号 订阅   ...

  5. 在DevExpress GridControl的一列中显示图片

    作者:jiankunking 出处:http://blog.csdn.net/jiankunking 近期做项目的时候用到了将GridControl中一列设置为PictureEdit类型,然后通过这一 ...

  6. WPF界面开发:DevExpress WPF在GridControl中固定行时处理时刻

    DevExpress广泛应用于ECM企业内容管理. 成本管控.进程监督.生产调度,在企业/政务信息化管理中占据一席重要之地.通过DevExpress WPF Controls,您能创建有着强大互动功能 ...

  7. DevExpress GridControl 使用方法技巧 总结 收录整理

    一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 ().gridView.AddNe ...

  8. DevExpress GridControl使用(转)

    DevExpress GridControl使用 (一)原汁原味的表格展示 Dev控件中的表格控件GridControl控件非常强大.不过,一些细枝末节的地方有时候用起来不好找挺讨厌的.使用过程中,多 ...

  9. DevExpress GridControl小结

    1. 如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 2. 如何新增一条记录 (1).gridView.Ad ...

  10. C# DevExpress GridControl使用方法

    一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 ().gridView.AddNe ...

随机推荐

  1. 基于 Traefik 的激进 TLS 安全配置实践

    前言 Traefik是一个现代的HTTP反向代理和负载均衡器,使部署微服务变得容易. Traefik可以与现有的多种基础设施组件(Docker.Swarm模式.Kubernetes.Marathon. ...

  2. asp+vb.net解决调接口返回中文乱码问题

    1.问题描述 涉及语言:vb,vbscript,vb.net,asp 最近在工作中碰到了这样一个问题:需要调用一个接口解析简历文件中的关键信息.直接用postman测试该接口,接口返回值没问题,但一旦 ...

  3. Java用户交互方法——Scanner

    Scanner用户交互 使用Next方法接收 Scanner scanner = new Scanner(System.in); if(scanner.hasNext()){//判断用户有无输入 St ...

  4. SPOJ GCDMAT - GCD OF MATRIX

    简要题意 给出三个整数 \(T,n,m\),\(T\) 组询问,每组询问给出四个整数 \(i_1,j_1,i_2,j_2\)(数据保证 \(i_1,j_1\leq n\ \ i_2,j_2\leq m ...

  5. Openmp Runtime 库函数汇总(上)

    Openmp Runtime 库函数汇总(上) omp_in_parallel,如果当前线程正在并行域内部,则此函数返回true,否则返回false. #include <stdio.h> ...

  6. 1.【窗口组件】小部件-QWidgt

    一.前言 QWidget翻译过来是小部件的意思,QWidgt 类是所有用户界面对象的基类. 窗口部件是用户界面的一个基本单元:它从窗 口系统接收鼠标.键盘和其它事件,并且在屏幕上绘制自己.每一个窗口部 ...

  7. 低版本客户端连接高版本数据库报错ORA-28040、ORA-01017

    测试环境: 客户端:Oracle 11.2.0.1 服务端:Oracle 19.16 测试过程: 1.低版本客户端连接高版本数据库报错ORA-28040 2.低版本客户端连接高版本数据库报错ORA-0 ...

  8. npm 启动项目报错 Cannot find module '\@babel\compat-data\data\corejs3-shipped-proposals',解决办法

    最近升级了系统的node ,webpack 等等,然后今天打开项目,突然启动不起来了~~ 报错信息如下: Module build failed (from ./node_modules/babel- ...

  9. three.js一步一步来--如何画出构造辅助线

    可以参考下面代码,粘贴上去就有了~ <template> <div class="container"> <h1>初步构造出辅助线</h1 ...

  10. 重磅!瞄准 Web 3.0,谷歌云推出专为区块链服务的 Blockchain Node Engine!

    [本文由Cloud Ace整理发布,谷歌云服务请访问Cloud Ace 官网] 区块链技术正在为世界各地的消费者和企业带来巨大的创新和价值创造.随着技术变得越来越主流,公司需要可扩展.安全和可持续的基 ...