         // won't call updateDisplayList() because the size hasn't changed.
         // But the TextField has to be repositioned, so we need to
         // invalidate the layout as well as the size.
-        if (styleProp == "borderStyle" ||
-            styleProp == "styleName" ||
+        if (styleProp == "styleName" ||
+            styleProp == "borderSkin" ||
             styleProp == null)
+        {
+            //if the border skin has changed then rebuild it.
+            if(border)
+            {
+                removeChild(DisplayObject(border));
+                border = null;
+            }
+            
+            createBorder();	        
+        }
+        else if (styleProp == "borderStyle")
         {
             invalidateDisplayList();
         }

    {
        return textField;
    }
}

}

        super.createChildren();

        // Create the border/background.
        createBorder();

        // Create the TextField that displays the tooltip text.
        createTextField(-1);
