title: How do I find which rows have been updated in the underlying Datatable on updating the Datagridview?
body: <p>This is what I am trying to achieve:</p>
  
  <ol>
  <li>DataTable populated using data from non database source  </li>
  <li>This table is bound to a DataGridView using BindingSource  </li>
  <li>The DataGridView is updated by the user, so that some cells now have new values.  </li>
  <li>Because the table is bound to the datagridview its values are updated.  </li>
  </ol>
  
  <p>How do I get only the updated rows(the rows which have been edited) in the grid/datatable?  </p>
  
  <p>I have tried :  </p>
  
  <pre><code>DataRow[] updatedRows = 
                _table.Select(null, null, DataViewRowState.ModifiedCurrent);
  </code></pre>
  
  <p>But this always returns 0 rows. Is there a way to get only the modified rows?</p>
  
  <p>Worst case:</p>
  
  <ul>
  <li>Keep a copy of the original table  </li>
  <li>Get the new table from the datagridview datasource  </li>
  <li>Compare all rows.  </li>
  </ul>
  
  <p>Thanks!</p>