Delphi 2010:在vsReport ViewStyle中组合TListView项

时间:2011-06-23 10:05:15

标签: delphi delphi-2010 tlistview

首先这可能吗?

我有两个问题 - 首先是在运行时创建时无法让组出现在TListView中。我正在使用以下代码:

lg := lvResults.Groups.Add;
lg.Header := 'New Starters';
lg.GroupID := 0;

第二个是即使我在设计时创建组 - 我可以在表单设计器中看到它们 - 它们在运行时不存在 - 甚至在我刷新数据以添加我自己的项目之前......

其他: 我已经确认下面的答案适用于处女项目。但是在我想要使用它的项目中失败了!我已经用调色板中的新TListView取代了我的TListView,没有任何乐趣。列表视图位于tpagecontrol

1 个答案:

答案 0 :(得分:7)

以下代码会产生可见的组。您是否忘记将GroupView设置为True

procedure TMyForm.FormCreate(Sender: TObject);
var
  Group: TListGroup;
  Item: TListItem;
begin
  ListView1.ViewStyle := vsReport;
  ListView1.GroupView := True;
  ListView1.Columns.Add.Caption := 'My column';
  Group := ListView1.Groups.Add;
  Group.Header := 'My header';
  Item := ListView1.Items.Add;
  Item.GroupID := Group.GroupID;
  Item.Caption := 'My item';

Delphi documentation中有一个代码示例。