     mx_internal static function createAccessibilityImplementation(
                                 component:UIComponent):void
     {
-        component.accessibilityImplementation =
-            new DataGridAccImpl(component);
-    }
-
+        // attach AccImpl to placeholder focusOwner component so that item editors
+        // are exposed as sibling of the dataGrid allow for correct exposure in MSAA
+        // and the ability for iSimpleTextSelection interface to work as it requires 
+        // that the stage focused component be the same MSAA component 
+        var accImpl:DataGridAccImpl = new DataGridAccImpl(component);
+        DataGrid(component).focusOwner.accessibilityImplementation = accImpl;
+    }
+    
     //--------------------------------------------------------------------------
     //
     //  Constructor

     */
    override protected function get eventsToHandle():Array
    {
        return super.eventsToHandle.concat([GridSelectionEvent.SELECTION_CHANGE]);
    }

    //--------------------------------------------------------------------------

    override public function get_accState(childID:uint):uint
    {
        var accState:uint = getState(childID);
        if (childID == 0
        && DataGrid(master).focusOwner == UIComponent(master).getFocus())
            accState |= AccConst.STATE_SYSTEM_FOCUSED;
        if (int(childID) <= 0)
            return accState;

