CartPageViewModel.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. using Microsoft.Toolkit.Mvvm.Input;
  2. using MyMoviesWPF.MVVM.ViewModel.Core;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Collections.ObjectModel;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows;
  9. namespace MyMoviesWPF.MVVM.ViewModel
  10. {
  11. public class CartPageViewModel : BaseViewModel
  12. {
  13. private ObservableCollection<Movie> _cartMoviesCollection;
  14. private Movie _removeMovie;
  15. public CartPageViewModel()
  16. {
  17. _cartMoviesCollection = Service.CartMoviesCollection;
  18. OnPropertyChanged("CartMoviesCollection");
  19. }
  20. public ObservableCollection<Movie> CartMoviesCollection
  21. {
  22. get { return _cartMoviesCollection; }
  23. set
  24. {
  25. if (_cartMoviesCollection == value)
  26. return;
  27. _cartMoviesCollection = value;
  28. OnPropertyChanged("CartMoviesCollection");
  29. }
  30. }
  31. public Movie RemoveMovie
  32. {
  33. get
  34. {
  35. return _removeMovie;
  36. }
  37. set
  38. {
  39. if (MessageBox.Show("Вы действительно хотите убрать этот фильм из корзины?",
  40. "Confirmation", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
  41. {
  42. var itemToRemove = Service.CartMoviesCollection.Single(r => r.Idmovie == Service.movie.Idmovie);
  43. Service.CartMoviesCollection.Remove(itemToRemove);
  44. _cartMoviesCollection = Service.CartMoviesCollection;
  45. OnPropertyChanged("CartMoviesCollection");
  46. Service.MainViewModel.UpdateCartStr();
  47. }
  48. else
  49. {
  50. // Do not close the window
  51. }
  52. }
  53. }
  54. }
  55. }