ListView

The correct way to do this is:

while not end do
begin
   with ListView.Items.Add do
   begin
      Caption := 'col 0';
      SubItems.Add('col 1');
      SubItems.Add('col 2');
   end;
   Inc(i);
end;