将数据DBGrid插入TlistItem

时间:2009-10-12 16:29:49

标签: database delphi

如何使用Delphi将数据DbGrid插入TlistItem?

1 个答案:

答案 0 :(得分:3)

TdbGrid中的数据只能存储在TDataSet的后代中。所以我怀疑你的问题是如何将TDataset中的信息转换为TListView。

基本上可以使用以下代码完成。

procedure TForm13.DisplayData(Dataset: TDataSet; ListView: TListView);
var
 LI : TListItem;
 CO : TListColumn;
 I : Integer;
begin
  // Setup the Columns
  ListView.ViewStyle := vsReport;
  ListView.Columns.Clear;
  for I := 1 to DataSet.Fields.Count do
  begin
     CO := ListView.Columns.Add;
     CO.Caption := Dataset.Fields.FieldByNumber(I).DisplayLabel;
     Co.AutoSize := true;
  end;

  // Populate The Data
  Dataset.First;
  while not DataSet.EOF do
  begin
    LI := ListView.Items.Add;
    LI.Caption := Dataset.Fields.FieldByNumber(1).AsString;
    for I := 2 to DataSet.Fields.Count do
    begin
      LI.SubItems.Add(Dataset.Fields.FieldByNumber(I).AsString);
   end;
   DataSet.Next;
  end;
end;
相关问题