         ancestorsVisible = false;
         invalidateAncestorsVisibleFlag = false;
         invalidateProperties();
+    }
+    
+    private function ancestor_creationCompleteHandler(event:FlexEvent):void
+    {
+        if (!invalidateAncestorsVisibleFlag)
+        {
+            invalidateAncestorsVisibleFlag = true;
+            invalidateProperties();
+        }
     }
     
     private function ancestor_hideHandler(event:FlexEvent):void

        {
            var ancestor:UIComponent = watchedAncestors.pop();
            
            ancestor.removeEventListener(MoveEvent.MOVE, ancestor_moveHandler);
            ancestor.removeEventListener(ResizeEvent.RESIZE, ancestor_resizeHandler);
            ancestor.removeEventListener(FlexEvent.SHOW, ancestor_showHandler);

            }
        }
        
        var foundUninitialized:Boolean = false;
        for (i = newWatchedAncestors.length - 1; i >= 0; i--)
        {
            var newAncestor:UIComponent = newWatchedAncestors[i];
            
