make sure to make collection "bindable" where you declare it.
for example....
ActionScript Code:
[Bindable] public var collection:ArrayCollection = new ArrayCollection();
if you are filling your collection from a remote object or webservice call, and your result is an Array, then make sure to set the "source" property, not the collection itself, or you will break the binding.
eg.
ActionScript Code:
public function result(data:Object):void {
collection.source = data.result as Array;
}
if you are filling it manually, then use the "addItem" method to add items to your collection.
HTH,
Ryan