title: DataGridView update datasource directly after changed Checkbox value
body: <p>I have a System.Windows.Forms DataGridView that is bound to a <code>List&lt;MyObject&gt;</code>.<br>
  The class MyObject contains a boolean property that is bound to DataGridViewCheckboxCell within the DataGridView.</p>
  
  <pre><code>public class MyObject
  {
      public decimal DefaultValue {get; set; }
      public bool HasCustomValue {get;set; }
      public decimal CustomValue {get;set; }
      public decimal CurrentValue
      {
          get
          {
              return HasCustomValue
                  ? CustomValue
                  : DefaultValue;
          }
  }
  </code></pre>
  
  <p>If I change the value of <code>HasCustomValue</code> another (readonly) property <code>CurrentValue</code> changes it's value, too.
  That is done by implementing the INotifyPropertyChanged event (I left that part in the source example for simplicity)</p>
  
  <p>If I changed <code>HasCustomValue</code> from outside the DataGridView, the column bound to <code>CurrentValue</code> gets updated immediately.
  Howevery, If the users enables/disables the checkbox, <code>HasCustomValue</code> is not changed in the underlying datasource unless he leaves the column by clicking with the mouse or pressing the TAB key.</p>
  
  <p>Is there a way to force the grid to update the datasource directly after changing a checkbox value?  </p>
  
  <p>If I bind a Control Property I have the ability to set the <code>DataSourceUpdateMode</code> to <code>Windows.Forms.DataSourceUpdateMode.OnPropertyChanged</code> but I haven't found anything like that in a DataGridView</p>