title: TableLayoutPanel displays vertical scroll
body: <p>I have TableLayoutPanel for dynamic creation of controls with AutoScroll = true. It's work fine when I add new controls. But when I remove and all controls are visible, vertical scroll is visible. 
  Some screenshots here: </p>
  
  <p>Expected/correct scroll visibility:</p>
  
  <p><img src="https://i.stack.imgur.com/DeO0a.png" alt="enter image description here"> </p>
  
  <p>Incorrect visibility:</p>
  
  <p><img src="https://i.stack.imgur.com/PdP1v.png" alt="enter image description here"></p>
  
  <p>Any ideas?</p>
  
  <p>Update: 
  Here is some code</p>
  
  <pre><code>tableLayoutPanel1.SuspendLayout();
  tableLayoutPanel1.RowCount = 0;
  tableLayoutPanel1.RowStyles.Clear();
  tableLayoutPanel1.AutoScroll = true;
  tableLayoutPanel1.Padding = new Padding(0, 0, SystemInformation.VerticalScrollBarWidth, 0);
  foreach (var item in objects)
  {
       tableLayoutPanel1.RowCount++;
       tableLayoutPanel1.RowStyles.Add(new RowStyle(SizeType.AutoSize));
       tableLayoutPanel1.Controls.Add(CreateNewItem(item));
   }
  
   tableLayoutPanel1.RowCount++;
   tableLayoutPanel1.RowStyles.Add(new RowStyle(SizeType.AutoSize));
   tableLayoutPanel1.Controls.Add(CreateAddButton());
  
   tableLayoutPanel1.ResumeLayout();
  </code></pre>
  
  <p>and code for deleting </p>
  
  <pre><code>tableLayoutPanel1.SuspendLayout();
  tableLayoutPanel1.Controls.Remove(item);
  tableLayoutPanel1.RowStyles.RemoveAt(0);
  tableLayoutPanel1.RowCount--;
  tableLayoutPanel1.ResumeLayout();
  </code></pre>
  
  <p>AutoSize is true, AutoSizeMode is GrowAndShrink</p>