 
         IDataRenderer(header).data = content;
 
-        if (content is Container)
-        {
-            var contentContainer:Container = Container(content);
+        if (content is INavigatorContent)
+        {
+            var contentContainer:INavigatorContent = INavigatorContent(content);
 
             header.label = contentContainer.label;
             if (contentContainer.icon)
                 header.setStyle("icon", contentContainer.icon);
 
             // If the child has a toolTip, transfer it to the header.
-            var toolTip:String = contentContainer.toolTip;
+            var toolTip:String = (contentContainer as UIComponent).toolTip;
             if (toolTip && toolTip != "")
             {
                 header.toolTip = toolTip;
-                contentContainer.toolTip = null;
+                (contentContainer as UIComponent).toolTip = null;
             }
         }
 

{

import flash.display.DisplayObject;
import flash.display.DisplayObjectContainer;
import flash.events.Event;
import flash.events.FocusEvent;
import flash.events.KeyboardEvent;
import flash.events.MouseEvent;
import flash.geom.Rectangle;
import flash.ui.Keyboard;
import flash.utils.getTimer;
import mx.automation.IAutomationObject;
import mx.containers.accordionClasses.AccordionHeader;
import mx.controls.Button;

        {
            // Need to set the new index to be visible here
            // in order for effects to work.
            IUIComponent(getChildAt(newIndex)).setVisible(true);

            // Now that the effects have been triggered, we can hide the
            // current view until it is properly sized and positioned below.
            IUIComponent(getChildAt(newIndex)).setVisible(false, true);
            if (oldIndex != -1)
                IUIComponent(getChildAt(oldIndex)).setVisible(false);

            instantiateChild(selectedChild);
        }
