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. freeswitch的gateway配置方案

    概述 freeswitch是一款简单好用的VOIP开源软交换平台. 在voip的网络模型中,网关是我们经常会遇到的概念. 在freeswitch中,如何配置gateway,如何使用好gateway的模 ...

  2. day09-功能实现08

    家居网购项目实现08 以下皆为部分代码,详见 https://github.com/liyuelian/furniture_mall.git 19.功能18-添加家居到购物车 19.1需求分析/图解 ...

  3. ArcGIS工具 - 导出空数据库

    有时,需要根据已有的成果数据创建一个空的数据库模板文件,用于新的编辑或对外发布.那么,如果又快又好的创建呢?为源GIS为您编写了一个导出空数据库工具,它可以实现"一键"快速导出任意 ...

  4. iOS如何实现自动化打包

    iOS如何实现自动化打包 前言 在我们的日常开发工作中,避免不了会出现这样的场景:需求迭代开发完成之后,需要提供ipa包给QA同学进行测试,一般会执行如下流程:1.执行Git Pull命令,拉最新的代 ...

  5. FalseSharing-伪共享

    1.CPU缓存 要了解什么是伪共享,首先得了解CPU缓存架构与缓存行的知识 (1)<CPU缓存架构> 主内存RAM是数据存在的地方,CPU和主内存之间有好几级缓存,因为即使直接访问主内存相 ...

  6. windows消息处理机制

    三层机制 1.顶端就是Windows内核.Windows内核维护着一个消息队列,第二级控制中心从这个消息队列中获取属于自己管辖的消息,后做出处理,有些消息直接处理掉,有些还要发送给下一级窗体(Wind ...

  7. Rust Rand生成随机数

    # in project file cargo add rand extern crate rand; use rand::Rng; fn main() { let mut rng = rand::t ...

  8. 学习Java Day9

    今天学习了switch,以及bread和read_date的使用,还学习了大数

  9. ubuntu18.04编译webrtc_android库

    webrtc 是谷歌提供的音视频通讯方案, 能够很好的解决音视频互联互通的场景. 本文基于 Ubuntu 18.04 编译 android 版本的过程, 其它平台也可以参考, 基本都大同小异. 编译环 ...

  10. 利用Git+GitHub进行团队协作开发

    自己之前写过两篇关于Git和GItHub使用的文章,分别是 浅谈使用git 进行版本控制博客链接:https://www.cnblogs.com/wj-1314/p/7992543.html 使用Gi ...