title: Access ListBox.SelectedItems from another thread
body: <p>I have <code>ListBox</code> called lstProductGroups.</p>
  
  <p>On a simple Windows Form, a method called <code>GetGroups</code> gives me string groups selected by the user like <code>Cars, Bikes</code> etc.</p>
  
  <pre><code>public List&lt;string&gt; GetGroups()
  {
      List&lt;string&gt; prodGroups = (from object item in lstProductGroups.SelectedItems select item.ToString()).ToList();
  
      return prodGroups;
  }
  </code></pre>
  
  <p>But if I try to access same method from another thread I get all items in my list called <code>System.Data.DataRowView</code>.</p>
  
  <p>I even tried it in a <code>foreach</code> loop with <code>BeginInvoke</code>, but the <code>item.ToString()</code> always returns <code>System.Data.DataRowView</code>.</p>
  
  <p>I am new to Winforms with threading. What am I doing wrong?</p>