title: How can I detect when leaving a row in a bindingsource?
body: <p>I have a datagridview showing baisc document data (Name, type), which the user navigates to access each document.
  A richtext box shows the first page of each document as navigation occurs.
  However, since there can be multiple pages per document, the pages are managed in a separate BindingSource so the user can "flip" through them and make changes.</p>
  
  <p>If the user makes changes to either say the document name or to information on any of the pages, he has 2 choices for saving these, either via an Update button or via navigating to another document in the datagridview.</p>
  
  <p>The button is fine because all binding sources are in a "static" state.</p>
  
  <p>However, I'm having trouble with the second option since datagridview doesn't offer a "row changing" event. The "RowLeave" event isn't appropriate since the user may be in a row, but click over to the richtext box to edit a corresponding page which, of course fires the "RowLeave" event. I only want to capture an event when the user actually changes document.</p>
  
  <p>I've tried the Documents BindingSource "CurrentChanged" and "PositionChanged" events but they both occur after the "Current" pointer has changed so I don't have the correct context for the update(s). I could have a global "CurrentPosition" variable which is used to regain context while I do the updates, but that seems inelegant. Being fairly new to this, I'm guessing that I've missed something so any help would be fantastic.</p>
  
  <p>Thanks,
  James</p>