Delphi 2010:在vsReport ViewStyle中组合TListView项

Dan*_*lly 5 delphi tlistview delphi-2010

首先这可能吗?

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

lg := lvResults.Groups.Add;
lg.Header := 'New Starters';
lg.GroupID := 0;
Run Code Online (Sandbox Code Playgroud)

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

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

Dav*_*nan 7

下面的代码会产生可见的组.你可能忘了GroupViewTrue

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';
Run Code Online (Sandbox Code Playgroud)

Delphi文档中有一个代码示例.