         layoutTarget.measuredHeight = visibleHeight;
 
         layoutTarget.measuredMinWidth = minColumnWidth;
-        layoutTarget.measuredMinHeight = rowHeight;
+        layoutTarget.measuredMinHeight = visibleHeight;
         
         layoutTarget.setContentSize(columnWidth, contentHeight);
     }

        var totalCount:uint = count; // How many items will be laid out
        for (var i:int = 0; i < count; i++)
        {
            var layoutItem:ILayoutItem = layoutTarget.getLayoutItemAt(i);
            if (!layoutItem || !layoutItem.includeInLayout)
            {
            	totalCount--;
                continue;
            }            

            preferredWidth = Math.max(preferredWidth, layoutItem.preferredSize.x);
            preferredHeight += layoutItem.preferredSize.y; 

            var itemMinWidth:Number = hasPercentWidth(layoutItem) ? layoutItem.minSize.x : layoutItem.preferredSize.x;
            var itemMinHeight:Number = hasPercentHeight(layoutItem) ? layoutItem.minSize.y : layoutItem.preferredSize.y;
            minWidth = Math.max(minWidth, itemMinWidth);
            minHeight += itemMinHeight;
            
            if ((explicitRowCount != -1) && (visibleRows < explicitRowCount)) 
            {
            	visibleHeight = preferredHeight;
            	visibleRows += 1;
            }
        }
        
        if (totalCount > 1)
        { 
            var gapSpace:Number = gap * (totalCount - 1);
            minHeight += gapSpace;
            preferredHeight += gapSpace; 
            visibleHeight += (visibleRows > 1) ? (gap * (visibleRows - 1)) : 0;
        }
        
        layoutTarget.measuredWidth = preferredWidth;

        	layoutTarget.invalidateDisplayList();
        }
    }

    private function variableRowHeightMeasure(layoutTarget:Group):void
    {
