private async Task Load()
        {
            var    coll     = new ObservableCollection <DisplayableOfferViewModel>();
            string username = Thread.CurrentPrincipal.Identity.Name;

            //using (var context = new AccommodationContext())
            //{
            //    User u = context.Users.FirstOrDefault(us => us.Username.Equals(username));
            //    if (u == null) throw new Exception();
            //    IEnumerable<Offer> offers =
            //        context.Offers.Where(o => o.CustomerId == u.Id)
            //            .Include(o => o.OfferInfo)
            //            .Include(o => o.Room.Place)
            //            .Include(o => o.Room.Place.Address);
            //    foreach (var offer in offers)
            //    {
            //        coll.Add(new DisplayableOfferViewModel(new DisplayableOffer(offer)));
            //    }
            //}
            try
            {
                IList <Offer> offers = await _offersProxy.GetReservedOffers(username);

                foreach (var offer in offers)
                {
                    offer.OfferInfo = await _offerInfoesProxy.Get(offer.OfferInfoId);

                    offer.Room = await _roomsProxy.Get(offer.RoomId);

                    offer.Room.Place = await _placesProxy.Get(offer.Room.PlaceId);

                    offer.Room.Place.Address = await _addressesProxy.Get(offer.Room.Place.AddressId);
                }
                foreach (var offer in offers)
                {
                    var vm = new DisplayableOfferViewModel(new DisplayableOffer(offer));
                    coll.Add(vm);
                    vm.OfferResigned += OnResign;
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Nie udało się załodować ofert.");
            }
            PurchasedOffers = coll;
        }
        private void OnResign(object sender, EventArgs e)
        {
            DisplayableOfferViewModel vm = sender as DisplayableOfferViewModel;

            PurchasedOffers.Remove(vm);
        }