Delphi控件cxGrid 如何动态创建列?

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;  

你可能感兴趣的:(DELPHI)