title: A better way of forcing data bound WPF ListBox to update?
body: <p>I have WPF ListBox which is bound to a ObservableCollection,
  when the collection changes, all items update their position.</p>
  
  <p>The new position is stored in the collection but the UI does not update.
  So I added the following:</p>
  
  <pre><code>    void scenarioItems_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
      {
          ToolboxListItem.UpdatePositions();
          lstScenario.ItemsSource = null;
          lstScenario.ItemsSource = ToolboxListItem.ScenarioItems;
          this.lstScenario.SelectedIndex = e.NewStartingIndex;
      }
  </code></pre>
  
  <p>By setting the ItemsSource to null and then binding it again, the UI is updated,</p>
  
  <p>but this is probably very bad coding :p</p>
  
  <p>Suggestions?</p>