When binding collections via INotifyCollectionChanged into a WPF
interface, has anyone been able to take control of certain events and
implement animation? Is there a way to add your own code when handing
these binding events?

For example, when inserting items, to slide the sibling items apart,
allowing space for the entry; or when deleting items to do some smooth
collapse gesture?

I am unsure as to how the INotifyCollectionChanged binding is
implemented in WPF - does it actually perform insert/update/delete's
of items in a ItemsControl; or does it regenerate the whole thing
every time a change is made? I am suspecting the latter given the
performance of removing items from large collections. I would hope the
args provided by the INotifyCollectionChanged event would be used to
optimize the action...

Regards, Fil.