我使用的是xtragrid,它绑定了一个数据源,假设它有一个字段是spid,我让gridview中的一列叫“商品名称”绑定了spid字段,现在想在gridview加一列,叫“商品条码”也绑定spid字段,能不能做到?我定义了一个列 DevExpress.XtraGrid.Columns.GridColumn barcode = new DevExpress.XtraGrid.Columns.GridColumn();
barcode.ColumnEditName = "BarCode";
barcode.Caption = "条码";然后加到gridview里去 this.gv1.Columns.Add(barcode);但是发现显示出来的表格里居然没有这个新加的列,用columns.count来排错,列数也没有增加。
barcode.ColumnEditName = "BarCode";
barcode.Caption = "条码";然后加到gridview里去 this.gv1.Columns.Add(barcode);但是发现显示出来的表格里居然没有这个新加的列,用columns.count来排错,列数也没有增加。
你的方法也可以,但是你这个Grid没用过,而且,你的Grid的新增列没有绑定字段
再说,应该在你的DataSource下手脚也很方便~~
DevExpress.XtraGrid.Columns.GridColumn gridCoulumn = new DevExpress.XtraGrid.Columns.GridColumn();
gridCoulumn.Caption = ds.Tables[0].Rows[i][""].ToString();
gridCoulumn.FieldName = ds.Tables[0].Rows[i][""].ToString();gridView.Columns.Add(gridCoulumn);
这个属性不是设置列绑定的,这个是指定该列对应编辑器名称,比如使用CheckBox,或者图片框,默认是普通的文本框。。
要实现你说的功能,最简单的办法,就是按照2楼的方法。
barcode.FieldName = "spid";
barcode.ColumnEditName = "BarCode";
barcode.Caption = "条码";
this.gv1.Columns.Add(barcode);不过很可惜,表格里还是显示不了这个新列。
barcode.FieldName = "spid";
barcode.Name = "BarCode";
barcode.Caption = "条码";
this.gv1.Columns.Add(barcode);
this.gv1.Columns["BarCode"].Caption = "条码";
//下面才是关键
this.gv1.Columns["BarCode"].VisibleIndex = 1;
this.gv1.Columns["BarCode"].Caption = "条码";
//下面才是关键
this.gv1.Columns["BarCode"].VisibleIndex = 1;