import mx.events.DragEvent;
import mx.managers.DragManager;
import mx.core.DragSource;
import mx.collections.IList;
import mx.collections.ArrayCollection;
private function initApp():void {
firstList.dataProvider = new ArrayCollection([
{label:"First", data:"1"},
{label:"Second", data:"2"},
{label:"Third", data:"3"},
{label:"Fourth", data:"4"},
]);
secondList.dataProvider = new ArrayCollection([]);
}
private function dragDropHandler(event:DragEvent):void {
if (event.dragSource.hasFormat("items") ==false)
{
return;
}
event.preventDefault();
event.currentTarget.hideDropFeedback(event);
var dropTarget:List=List(event.currentTarget);
var itemsArray:Array =event.dragSource.dataForFormat("items") as Array;
var tempItem:Object ={label: itemsArray[0].label, data: itemsArray[0].data};
var dropLoc:int = dropTarget.calculateDropIndex(event);
IList(dropTarget.dataProvider).addItemAt(tempItem, dropLoc);
}