         // cache until we're fully initialized.  (bug 102639)
         // This check was moved from the beginning of this function to
         // here to fix bugs 103665/104213.
-        if (selectedChild && Container(selectedChild).numChildrenCreated == -1)
+        if (selectedChild && selectedChild.deferredContentCreated)
             return;
 
         // Don't remember sizes if we don't have any children

        // EffectManager might try to play another effect that animates the same
        // properties.
        if (oldSelectedIndex != -1)
            Container(getChildAt(oldSelectedIndex)).tweeningProperties = ["x", "y", "width", "height"];
        Container(getChildAt(newSelectedIndex)).tweeningProperties = ["x", "y", "width", "height"];

        // If the content of the new child hasn't been created yet, set the new child
        // to the content width/height. This way any background color will show up
        // properly during the animation.
        var newSelectedChild:Container = Container(getChildAt(newSelectedIndex));
        if (newSelectedChild.numChildren == 0)
        {
            var paddingLeft:Number = getStyle("paddingLeft");
            var contentX:Number = borderMetrics.left + (paddingLeft > 0 ? paddingLeft : 0);

        var localContentHeight:Number = calcContentHeight();

        var y:Number = vm.top;
        var content:UIComponent;

        var n:int = numChildren;
        for (var i:int = 0; i < n; i++)
