title: Add controls to GUI in background worker
body: <p>I have a form with a top and bottom panel.<br>
  The user will be making selections in the top panel, and each time they change a value on one key field I destroy the controls in the bottom panel, then make a time-consuming call to another application (via COM) and add a list of new controls being added.  This refresh process takes several seconds.</p>
  
  <p>I'd like to be able to disable the bottom panel while it's being refreshed, and allow the user to be able to keep working in the top panel.  Of course, this is all one GUI running on one thread.</p>
  
  <p>Illustrated:</p>
  
  <p><img src="https://i.stack.imgur.com/3lShT.png" alt="enter image description here"></p>
  
  <p>I played with BackgroundWorker, but of course it cannot directly create controls on the main thread's GUI.</p>
  
  <p>Is it possible for me to do this, i.e. allow one part of the GUI to be disabled and rebuilt in the background, while the user continues to work in on another part?</p>