 
         return !(advancedDataGridEvent.isDefaultPrevented())
     }
+	
+	/**
+	 *  @private
+	 *  Sets focus back to the grid so default handler will move it to the 
+	 *  next component.
+	 */ 
+	private function deferFocus():void
+	{
+		losingFocus = true;
+		setFocus();
+		losingFocus = false;
+	}
 
     /**
      *  @private

        if (itemEditorInstance)
        {
            endEdit(AdvancedDataGridEventReason.OTHER);
            losingFocus = true;
            setFocus();
        }
    }


                index += incr;
                if (index > maxIndex || index < 0)
                {
					if (endEdit(AdvancedDataGridEventReason.NEW_ROW))
					{
						// if we've fallen off the rows, we need to leave the grid. get rid of the editor
						setEditedItemPosition(null);
						
						// set focus back to the grid so default handler will move it to the next component
						deferFocus();
						return false;
					}
                    return true;
                }
            }

