title: Hiding Row in DataGridView Very Slow
body: <p>I have a DataGridView in a Winforms app that has about 1000 rows (unbound) and 50 columns. Hiding a column takes a full 2 seconds. When I want to hide about half the rows, this becomes a problem.</p>
  
  <pre><code>    private void ShowRows(string match)
      {
          this.SuspendLayout();
          foreach (DataGridViewRow row in uxMainList.Rows)
          {
              if (match == row.Cells["thisColumn"].Value.ToString()))
              { row.Visible = false; }
              else
              { row.Visible = true; }
          }
          this.ResumeLayout();
      }
  </code></pre>
  
  <p>I did some testing by adding by adding<code>Console.WriteLine(DateTime.Now)</code>around the actions, and<code>row.Visible = false</code>is definitely the slow bit. Am I missing something obvious, like setting <code>IsReallySlow = false</code>? Or do I have to go ahead and enable Virtual Mode and code up the necessary events?</p>