private void CustomersCollectionChanged(object sender, NotifyCollectionChangedEventArgs e) { if (e.Action == NotifyCollectionChangedAction.Remove) { foreach (object item in e.OldItems) { CustomerUIObject customerObject = item as CustomerUIObject; // use the data access layer to delete the wrapped data object _dataAccessLayer.DeleteCustomer(customerObject.GetDataObject()); } } }