title: Drawing to a new "layer" in C#
body: <p>Building a little paint program and am trying to incorporate the concept of layers.</p>
  
  <p>I'm using a PictureBox control to display the image, and getting the Graphics object from the image being displayed by the PictureBox and drawing to that.</p>
  
  <p>My problem is I'm trying to figure out how to draw to a new Graphics object that is overlayed on top of the picture box, and be able to get the newly drawn image <em>without</em> the original image absorbed into the graphic.</p>
  
  <p>If I do something like:</p>
  
  <pre><code>Graphics gr = Graphics.FromImage(myPictureBox.image);
  gr.DrawRectangle(blah blah)
  </code></pre>
  
  <p>...I am editing the original image in the picture box. I want a way to only capture the new stuff being drawn as a separate image, but still have it displayed as an overlay over top of what was already there.</p>
  
  <p>Anyone able to point me in the right direction? Thanks!</p>