title: Detecting dirty using winforms data binding
body: <p>I am using 2 way binding with winforms text boxes.
  I need to work out if the user has changed my data
  Looking at the help for</p>
  
  <p><a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.bindingsource.currentitemchanged(v=vs.110).aspx" rel="nofollow noreferrer">the CurrentItemChanged Event</a> </p>
  
  <p>It seems that this event does fire if a property has changed, however it also fires if current has changed.</p>
  
  <p>Is there a way to tell whether the data has changed? </p>
  
  <p><a href="https://stackoverflow.com/questions/2206140/how-to-tell-if-user-has-modified-data-using-bindingsource">a similar question is also asked here</a>
  but not answered in my opinion</p>
  
  <p>Oliver mentions "if your object within the List support the INotifyPropertyChanged event and you replace the List by a BindingList you can subscribe to the ListChanged event of the BindingList to get informed about any changes made by the user."  </p>
  
  <p>My application meets these conditions but I cant get this working. The ListChangedType.ItemChanged property looked hopeful, but it changes when I navigate to the next record without changing the data </p>
  
  <p>I found a link <a href="http://social.msdn.microsoft.com/Forums/windows/en-US/8334a2f0-ceaf-4183-bf2d-421556d44914/bindingsource-detail-view-is-current-record-dirty?forum=winformsdatacontrols" rel="nofollow noreferrer">at Microsoft here</a> but surely it cant be that hard!</p>