title: TListView performance issues
body: <p>I tried to use a <code>TListView</code> component to display rather large data lists (like 4000 rows large), and creating the list is incredibly slow - it takes something like 2-3 secs, which makes the UI all laggy and close to unusable.</p>
  
  <p>I fill the <code>TListView.Items</code> inside a <code>BeginUpdate/EndUpdate</code> block, with only preallocated strings - I mean : I build a list of all strings to store (which takes no humanly noticeable time), <em>then</em> I put them in the TListView.</p>
  
  <p>I wish to display the TListView's content in <code>vsReport</code> mode with several columns.</p>
  
  <p>The code looks like this :</p>
  
  <pre><code>MyList.Items.BeginUpdate;
  for i := 0 to MyCount - 1 do
  begin
    ListItem := MyList.Items.Add;
    ListItem.Caption := StrCaptions[i];
    ListItem.SubItems.Add(StrSubItems1[i]);
    ListItem.SubItems.Add(StrSubItems2[i]);
  end;
  MyList.Items.EndUpdate;
  </code></pre>
  
  <p>Is there some other hack I missed in the TListView component's logic ? or should I just forget about using this component for performances ?</p>