         
         // calculte the natural height for the label
         var labelTextHeight:Number = 0;
-        var labelLineMetrics:TextLineMetrics;
-        
-        if (labelDisplay && labelDisplay.text != "")
-        {
+        
+        if (labelDisplay && labelText != "")
+        {
+            // reset text if it was truncated before.
+            if (labelDisplay.isTruncated)
+                labelDisplay.text = labelText;
+            
+            // commit styles to get an accurate measurement
             labelDisplay.commitStyles();
-            labelLineMetrics = measureText(labelText);
-            labelTextHeight = labelLineMetrics.height + UITextField.TEXT_HEIGHT_PADDING;
-        }
-        
-        if (messageDisplay && messageDisplay.text != "")
-        {
+            labelTextHeight = labelDisplay.textHeight + UITextField.TEXT_HEIGHT_PADDING;
+        }
+        
+        if (messageDisplay && messageText != "")
+        {
+            // commit styles to get an accurate measurement
             messageDisplay.commitStyles();
-            // no need to measure the text width and height since the measure function only 
-            // take in to account the first line.
         }
         
         // now size and position the elements, 3 different configurations we care about:

        }
        
        // Text is aligned next to icon
        var labelLineMetrics:TextLineMetrics;
        var labelWidth:Number = 0;
        var labelHeight:Number = 0;
        var messageLineMetrics:TextLineMetrics;
        var messageWidth:Number = 0;
        var messageHeight:Number = 0;
        
        if (labelDisplay)
        {
            labelLineMetrics = measureText(labelText);
            
            labelWidth = labelLineMetrics.width + UITextField.TEXT_WIDTH_PADDING;
            labelHeight = labelLineMetrics.height + UITextField.TEXT_HEIGHT_PADDING;
        }
            
        if (messageDisplay)
        {
            messageLineMetrics = measureMessageText(messageText);
            
            messageWidth = messageLineMetrics.width + UITextField.TEXT_WIDTH_PADDING;
            messageHeight = messageLineMetrics.height + UITextField.TEXT_HEIGHT_PADDING;
        }

        var verticalGap:Number = (labelDisplay && messageDisplay) ? getStyle("verticalGap") : 0;

     *  @private
     *  Static icon image cache.  This is the default for iconContentLoader.
     */
    static mx_internal var _imageCache:ContentCache;
    
    //--------------------------------------------------------------------------
    //
