 	
 	override public function get bounds():Rectangle
 	{
-		return new Rectangle(0, 0, width, height);
+		return new Rectangle(0, 0,
+		                     isNaN(explicitWidth) ? 0 : explicitWidth,
+		                     isNaN(explicitHeight) ? 0 : explicitHeight);
 	}
 	
 	/**

		{
			_radiusX = value;
			dispatchPropertyChangeEvent("radiusX", oldValue, value);
			notifyElementChanged();			
		}
	}
	

	override protected function drawElement(g:Graphics):void
	{
		if (radiusX != 0 || radiusY != 0)
			g.drawRoundRect(0, 0, width, height, radiusX * 2, radiusY * 2);
		else
			g.drawRect(0, 0, width, height);
	}

}
