title: Datagridview paint issue
body: <p>I have a datagridview in which I process the data from a datatable.  Then change the color on fields that are an issue.  I do this through the ProgressChanged event.  This is the code:</p>
  
  <pre><code>    private void bgwCompare_ProgressChanged(object sender, ProgressChangedEventArgs e)
      {
          ReportRow rr = (ReportRow)e.UserState;
          if (rr.nRow == 1 &amp;&amp; rr.nColumn == 2)
              rr.nColumn = 2;  // If I leave this in it works, if I remove it the single cell is not colored
          if (rr.nColumn == -1)
              dgvResults.Rows[rr.nRow].DefaultCellStyle.BackColor = Color.Yellow;
          else
              dgvResults.Rows[rr.nRow].Cells[rr.nColumn].Style.BackColor = Color.Salmon;
  
  
      }
  </code></pre>
  
  <p>This gets... REALLY bizarre...  I only appear to have a problem with a single cell out of over 1000 records.</p>
  
  <p>IF I try to watch the cell get set, it works.  (see the above code rr.nRow == 1 &amp;&amp; rr.nColumn == 2)</p>
  
  <p>If I comment that code out, the cell doesn't get painted.  If I leave that code in, the cell gets painted.  I know the value getting set to itself isn't doing anything, I just used that to set a break point.  However, if I take the breakpoint off but leave the code it; it works.  I'm baffled on what the heck is going on...</p>
  
  <p>Anyone have any ideas?</p>