C# DevExpress GridControl中BandedGridView表格使用


 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.效果圖如下:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM