protected override void SetSubscriptionUI() { InnerItem.OrderForms[0].Shipments.ToList().ForEach(x => { x.PropertyChanged += ViewModel_PropertyChanged; x.ShipmentItems.CollectionChanged += ViewModel_PropertyChanged; x.ShipmentItems.ToList().ForEach(y => y.PropertyChanged += ViewModel_PropertyChanged); }); OrderShipmentViewModels.ToList().ForEach(x => x.PropertyChanged_EventsAdd()); InnerItem.RmaRequests.ToList().ForEach(x => x.PropertyChanged += ViewModel_PropertyChanged); }
private void RaiseCanExecuteChanged() { // order commands CancelOrderCommand.RaiseCanExecuteChanged(); HoldOrderCommand.RaiseCanExecuteChanged(); ReleaseHoldCommand.RaiseCanExecuteChanged(); CreateRmaRequestCommand.RaiseCanExecuteChanged(); CreateExchangeCommand.RaiseCanExecuteChanged(); CreateRefundCommand.RaiseCanExecuteChanged(); OnPropertyChanged("IconSource"); // shipment and RmaRequest commands OrderShipmentViewModels.ToList().ForEach(x => x.RaiseCanExecuteChanged()); // InnerItem.RmaRequests.ToList().ForEach(x => x.RaiseCanExecuteChanged()); }
protected override void CloseSubscriptionUI() { if (InnerItem.OrderForms.Count > 0) { InnerItem.OrderForms[0].Shipments.ToList().ForEach(x => { x.PropertyChanged -= ViewModel_PropertyChanged; x.ShipmentItems.CollectionChanged -= ViewModel_PropertyChanged; x.ShipmentItems.ToList().ForEach(y => y.PropertyChanged -= ViewModel_PropertyChanged); }); if (OrderShipmentViewModels != null) { OrderShipmentViewModels.ToList().ForEach(x => x.PropertyChanged_EventsRemove()); } InnerItem.RmaRequests.ToList().ForEach(x => x.PropertyChanged -= ViewModel_PropertyChanged); } }