             throw new RangeError(message);
         }
         
+        navigators.splice(index, 0, item);
+                    
         setupNavigator(ViewNavigatorBase(item));
         addElementAt(ViewNavigatorBase(item), index);
+        
+        internalDispatchEvent(CollectionEventKind.ADD, item, index);
         
         if (selectedIndex == NO_PROPOSED_SELECTION)
         {

     */
    public function getItemIndex(item:Object):int
    {
        return getElementIndex(item as ViewNavigatorBase);
    }
    
    /**

                    navigator.activeView.removeEventListener(PropertyChangeEvent.PROPERTY_CHANGE, 
                                                                view_propertyChangeHandler);
                
                // Private event dispatched when a view has finished transitioning
                navigator.removeEventListener("viewChangeComplete", navigator_viewChangeCompleteHandler);
                navigator.removeEventListener("viewChangeStart", navigator_viewChangeStartHandler);
                navigator.removeEventListener(ElementExistenceEvent.ELEMENT_ADD, navigator_elementAddHandler);
                navigator.removeEventListener(ElementExistenceEvent.ELEMENT_REMOVE, navigator_elementRemoveHandler);
            }
            
            commitSelection();
            
            if (_selectedIndex >= 0)
            {
                navigator = navigators[_selectedIndex];
                
                navigator.addEventListener("viewChangeComplete", navigator_viewChangeCompleteHandler);
                navigator.addEventListener("viewChangeStart", navigator_viewChangeStartHandler);
                navigator.addEventListener(ElementExistenceEvent.ELEMENT_ADD, navigator_elementAddHandler);
                navigator.addEventListener(ElementExistenceEvent.ELEMENT_REMOVE, navigator_elementRemoveHandler);
                
                navigator.setActive(true);
                navigator.visible = true;
                navigator.includeInLayout = true;

                // Update the states of the controls on the newly activated view navigator.
                // The updateControlsForView() method will automatically bubble up to all
                // parents of the navigator.
