Adding a RowLeave event handler and making a slight change in the menuhandler made the sample work ok for me.
private void menuItem2_Click(object sender, System.EventArgs e)
{
//insert
if(this.mouseDownRow > -1 && this.mouseDownCol > -1)
{
int position = this.gridDataBoundGrid1.Binder.RowIndexToPosition(mouseDownRow);
this.gridDataBoundGrid1.BeginUpdate();
DataRow dr = dt.NewRow();
this.dt.Rows.InsertAt(dr, position);
this.dt.AcceptChanges();
this.gridDataBoundGrid1.EndUpdate();
}
}
private void gridDataBoundGrid1_RowLeave(object sender, GridRowEventArgs e)
{
dt.AcceptChanges();
}