public OrderViewModel(Order order, Customer customer, IToolManager toolManager)
 {
     Customer = customer;
     _model= order;
     _toolManager = toolManager;
     SubscribeToOrderDetailsChanged(_model);
 }
 public OrderViewModel CreateInstance(Order order, Customer customer)
 {
     return _container
         .With("order")
         .EqualTo(order)
         .With("customer")
         .EqualTo(customer)
         .GetInstance<OrderViewModel>();
 }
 private void UnSubscribeToOrderDetailsChanged(Order order)
 {
     order.PropertyChanged -= Order_PropertyChanged;
     foreach (var orderDetail in order.OrderDetails)
     {
         orderDetail.PropertyChanged
         -= Order_PropertyChanged;
     }
 }
 public OrderViewModel(Order model)
 {
     _model = model;
     SubscribeToOrderDetailsChanged(_model);
 }