                 var paddingBottom:Number = getStyle("paddingBottom");
                 
                 downArrowButton.move(0, 0);
-                border.setActualSize(w, h);
+                if (border)
+                	border.setActualSize(w, h);
                 textInput.setActualSize(w - arrowWidth, textInputHeight);
                 textInput.border.visible = false;
                 if (FlexVersion.compatibilityVersion >= FlexVersion.VERSION_3_0)

            var wh:Number = h - vm.top - vm.bottom;
            downArrowButton.setActualSize(wh, wh);
            downArrowButton.move(w - arrowWidth - vm.right, vm.top);
            border.setActualSize(w, h);
            textInput.setActualSize(w - arrowWidth, textInputHeight);
        }
        else

        super.createChildren();

        // Create the border first, in the back.
        if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_4_0)
        {
	        if (!border)
	        {
	            var borderClass:Class = getStyle("borderSkin");
	
	            if (borderClass)
	            {
	                border = new borderClass();
	
	                if (border is IFocusManagerComponent)
	                    IFocusManagerComponent(border).focusEnabled = false;
	
	                if (border is ISimpleStyleClient)
	                    ISimpleStyleClient(border).styleName = this;
	
	                addChild(DisplayObject(border));
	            }
	        }
        }

        // Next, create the downArrowButton before creating the textInput,
