private void Form1_Load(object sender, EventArgs e) { ///构建数据源 DataTable table = new DataTable(); ///DataTable添加列 table.Columns.Add("NAME", typeof(string)); table.Columns.Add("pNAME", typeof(string)); table.Columns.Add("AGE", typeof(string)); ///循环加数据源 for (int i = 0; i < 100; i++) { DataRow row = table.NewRow(); if (i < 50) { row["NAME"] = "张三" + i.ToString(); ; row["pNAME"] = "张三"; row["AGE"] = i.ToString(); } else { row["NAME"] = "李四" + i.ToString(); row["pNAME"] = "李四"; row["AGE"] = i.ToString(); } table.Rows.Add(row); } table.Rows.Add("李四","李四","100"); table.Rows.Add("张三", "张三", "100"); ///新在View上创建列 GridColumn col = new GridColumn(); col.Caption = "姓名"; col.FieldName = "NAME"; ///是否可见 col.Visible = true; this.gridView1.Columns.Add(col); ///新在View上创建列 GridColumn col1 = new GridColumn(); col1.Caption = "父节点"; col1.FieldName = "pNAME"; ///是否可见 col1.Visible = true; this.gridView1.Columns.Add(col1); ///新在View上创建列 GridColumn col2 = new GridColumn(); col2.Caption = "年纪"; col2.FieldName = "AGE"; ///是否可见 col2.Visible = true; this.gridView1.Columns.Add(col2); this.gridControl1.DataSource = table; } /// <summary> /// 分组 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void simpleButton1_Click(object sender, EventArgs e) { gridView1.Columns["pNAME"].GroupIndex = 0;//分类显示成树节点形式 } private void simpleButton2_Click(object sender, EventArgs e) { gridView1.Columns["pNAME"].GroupIndex = -1; }