         else if (propertyName != null && !isStyle && dest[propertyName] is IList)
         {
             addItemsToIList(dest[propertyName], localItems);
+        }
+        else if (vectorClass)
+        {
+            addItemsToVector(dest, propertyName, localItems);
         }
         else
         {

        for (var i:int  = 0; i < items.length; i++) 
            tempArray.splice(startIndex + i, 0, items[i]);
        
        assignArray(dest, propertyName, tempArray);
    }
    
    /**

        {
            removeItemsFromIList(dest[propertyName] as IList);
        }
        else if (vectorClass)
        {
            var tempVector:Object = isStyle ? dest.getStyle(propertyName) : dest[propertyName];
                
            if (numAdded < tempVector.length) 
            {
                tempVector.splice(startIndex, numAdded);
                assign(dest, propertyName, tempVector);
            } 
            else
            {
                // For destinations like ArrayCollection we don't want to 
                // affect the vector in-place in some cases, as ListCollectionView a
                // attempts to compare the "before" and "after" state of the vector
                assign(dest, propertyName, new vectorClass());
            }      
        }
        else
        {
            var tempArray:Array = isStyle ? dest.getStyle(propertyName) : dest[propertyName];
