title: Make all class events fired on the same thread as the constructor calling thread
body: <p>I have a windows form applications, and a class. </p>
  
  <p>The class fires events in different threads, so that I need to do code of <code>Control.InvokeRequired</code> and <code>Control.Invoke()</code> in the functions in the form that receive the events.</p>
  
  <p>Is it possible to make all the thread handling happen on the class, so that I do not need to do <code>Invoke()</code> in the form, and assume all coming events are already on the same thread ?</p>
  
  <p>The solution I am considering, which I do not like, is to initiate a dummy control in the constructor of the class, or pass a reference to the form in the class, and check <code>InvokeRequired</code> against.</p>
  
  <p>Any other possible solution ?</p>