方法一:
var i: Integer; Column: TcxGridDBColumn; cxview: TcxGridDBTableView; begin cxview := Self.Levels[0].GridView as TcxGridDBTableView; if cxview.DataController.DataSource <> nil then if cxview.DataController.DataSource.DataSet <> nil then begin cxview.ClearItems; for i:=0 to cxview.DataController.DataSource.DataSet.FieldCount-1 do begin Column := cxview.CreateColumn; Column.DataBinding.FieldName := cxview.DataController.DataSource.DataSet.Fields[i].FieldName; Column.PropertiesClass := TcxTextEditProperties; end; end; end;
方法二、
for i := 0 to Query.FieldCount - 1 do begin cxGrid.CreateColumn; cxGrid.columns[i].DataBinding.FieldName := Query.Fields[i].displayName; cxGrid.Columns[i].Caption := ‘XXXX‘; cxGrid.Columns[i].Width :=80; end;
方法三、
procedure TFrmRuleEdit.CreateCols; var Column: TcxGridDBColumn; begin cdsPowerPrj.First; while not cdsPowerPrj.Eof do begin Column := viewPower.CreateColumn; Column.Caption := cdsPowerPrj.FieldByName(‘description‘).Text; Column.DataBinding.FieldName := cdsPowerPrj.FieldByName(‘powerName‘).Text; Column.PropertiesClassName := ‘TcxCheckBoxProperties‘; Column.Width := 50; cdsPowerPrj.Next; end; end;