title: C# Combo values visible after thread is ready
body: <p>In my application I update a treeview in a backgrounworker thread. While updating the treeview, the combobox values are not visible. When the treeview is updated, the values appear.</p>
  
  <p>Here's my backgroundworker code:</p>
  
  <pre><code>void _bgWorker_DoWork(object sender, DoWorkEventArgs e)
  {
      tvCategories.Invoke((MethodInvoker)delegate()
      {
          FillCategoryTreeView(); // Fills the treeview
      }
      );
  }
  </code></pre>
  
  <p>The code that fills my combobox:</p>
  
  <pre><code>private void FillCategoryCombo()
  {
      Category categorie = new Category();
      List&lt;Category&gt; categories = categorie.GetQuestionCategories();
  
      cmbCategories.DataSource = categories;
      cmbCategories.DisplayMember = "Description";
      cmbCategories.ValueMember = "Id";
  }
  </code></pre>
  
  <p>The combobox is filled in the constructor of the form.</p>
  
  <p>The reason that I've put the treeview in a seperate thread is because the treeview must be updated. In the meantime I want to continue using the application. Therefore I need access to a combobox. But the values of the combobox are invisible while the treeview is being updated.</p>
  
  <p>What to do to solve this?</p>