title: Invalidate does nothing
body: <p>I have a datagridview on a form with an associated SelectionChanged event.</p>
  
  <p>When the selected row contains "attachments" then the backcolor of the btnComments control should turn yellow as follows:</p>
  
  <pre><code>   int noAttachments = 1;
  
     if (noAttachments &gt; 0)
         btnAttachments.BackColor = Color.Yellow;
     else
         btnAttachments.BackColor = normalColour;
  
     btnAttachments.Invalidate();
  </code></pre>
  
  <p>The code works as expected except that the Invalidate() call does nothing! i.e. the colour of the button does not change!</p>
  
  <p>Any ideas why?</p>