title: Create a custom collection like BindingList that works with ListBox to create a ListChanging event
body: <p>I have a situation where I need to know when an item is <strong>going</strong> to be added/removed/modified in the collection.</p>
  
  <p>I tried by inheriting BindingList in a class that will trigger these events, however the "adding" event doesn't work. The only way I found it working is by overriding EndNew() method, however I don't find a way to get which object is going to be added in this method <em>(if someone has a solution for this, it's ok too!)</em>.</p>
  
  <p>So built a totally new class which inherits from same interfaces/class of BindingList and implemented everything (I didn't inherit, however, ICancelAddNew).</p>
  
  <p>I bound it through databindings to my listbox and I find out that nothing works (listchanged events neither listchanging events). How can I simulate BindingList behavior on a listbox?</p>
  
  <p>Any suggestion heavily appreciated, I don't have any other ideas for a workaround</p>
  
  <p><strong>EDIT 1:</strong></p>
  
  <p>This is my collection: <a href="http://pastie.org/1978601" rel="nofollow">http://pastie.org/1978601</a>
  And this is how I bind the collection to the ListBox</p>
  
  <pre><code>        SpellCasterManager.CurrentProfile.ButtonsMacro.ListChanged += new ListChangedEventHandler(ButtonsMacro_ListChanged);
          SpellCasterManager.CurrentProfile.ButtonsMacro.ListChanging += new Expand.ComponentModel.ListChangingEventHandler(ButtonsMacro_ListChanging);
  gumpButton.DataBindings.Add("Value", SpellCasterManager.CurrentProfile.ButtonsMacro, "GumpIndex", false, DataSourceUpdateMode.OnPropertyChanged);
  </code></pre>
  
  <p>Actually under subscribed events there is just a MessageBox.Show("bla");</p>