title: DataGridView CellFormating speed issue?
body: <p>I have a DataGridView with a lot of rows around 3k. I need to make some rows in different colors(3 types of colors) depending on specific value. When I do that, there is no problem with 2 types of colors, the problem start if there are 3 colors.<br> The scroll bar disappears as it is in 1.img, when I scroll down it appears again. The second problem is when I Double Click on DGV to view details of selected item, the app is not responding. None of the problems appear when there are 2 colors.<br>
  This is 1.img
  <img src="https://i.stack.imgur.com/9sKtc.jpg" alt="1.img"></p>
  
  <p><br>This is the image with 2 colors, as you can see the scroll bar is in its place and when I Double Click, there is no "not responding"
  <img src="https://i.stack.imgur.com/Y2LOi.jpg" alt="2.img">
  Here is the code with what I am working:<br></p>
  
  <pre><code>private void CheckQuantity(DataGridViewRow dr)
      {
          var art = dr.DataBoundItem as DeArt;
          if (art != null)
              dr.DefaultCellStyle.BackColor = art.QuantityMin &gt; art.QuantityRemaining ? Color.LightSalmon : Color.Empty;
      }
      private void CheckPVA(DataGridViewRow dr)
      {
          var art = dr.DataBoundItem as DeArt;
          foreach (DeArtPVA v in PVAprice)
          {
              if (dr.DefaultCellStyle.BackColor == Color.LightSalmon &amp;&amp; v.IdArt == art.Id)
              {
                  dr.DefaultCellStyle.BackColor = Color.FromArgb(255, 120, 10);
                  break;
              }
              if (v.IdArt == art.Id)
                  dr.DefaultCellStyle.BackColor = Color.Yellow;
          }
      }
  
      protected override void DGVWarehouse_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
      {
          if (e.ColumnIndex == 0)
          {
              CheckQuantity(dgrDataGridView.Rows[e.RowIndex]);
              CheckPVA(dgrDataGridView.Rows[e.RowIndex]);
          }
      }
  </code></pre>
  
  <p>Any Ideas why?</p>