title: Create a Windows Form from a background Thread
body: <p>I'm developing a VS Package and I have this problem:</p>
  
  <p>I have a Background-Thread which checks every few seconds for specific changes that have to be done. This includes changing the GUI of VS 2010, which works perfectly fine <strong>without an invoke</strong> for some reason.</p>
  
  <p>Anyway if I try to open a new Form, it opens, but it doesn't show anything, kind of crashes and doesn't respond.<br>
  I've already tried <code>Application.OpenForms[0].invoke( /* delegate to create the form */)</code>.<br>
  This works fine, <strong>but I don't have an open form all the time</strong>.<br>
  I've also tried to create a System.Windows.Forms.Timer, <strong>but it doesn't start</strong> in the first place.</p>
  
  <p><strong>Question:</strong> How can I get the correct GUI thread to invoke my Form?<br>
  <strong>or rather:</strong> How can I create a new Form from my background thread?</p>