RegWindowVM.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Collections.ObjectModel;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace Task1.ViewModel
  8. {
  9. class RegWindowVM : BaseViewModel
  10. {
  11. private ObservableCollection<User> _users;
  12. private User _user;
  13. private RelayCommand _otmena;
  14. private RelayCommand _reg;
  15. public RelayCommand Reg
  16. {
  17. get
  18. {
  19. return _reg ?? (_reg = new RelayCommand((x) =>
  20. {
  21. TaskContext taskContext = new TaskContext();
  22. User user = User;
  23. taskContext.Users.Add(user);
  24. taskContext.SaveChanges();
  25. User = null;
  26. new MainWindow().Show();
  27. Helper.CloseWindowsAtType<RegWindow>();
  28. }));
  29. }
  30. }
  31. public RelayCommand Otmena
  32. {
  33. get
  34. {
  35. return _otmena ??
  36. (_otmena = new RelayCommand((x) =>
  37. {
  38. new MainWindow().Show();
  39. Helper.CloseWindowsAtType<RegWindow>();
  40. }));
  41. }
  42. }
  43. public ObservableCollection<User> Users
  44. {
  45. get => _users;
  46. set
  47. {
  48. _users = value;
  49. OnPropertyChanged();
  50. }
  51. }
  52. public User User
  53. {
  54. get => _user;
  55. set
  56. {
  57. _user = value;
  58. OnPropertyChanged();
  59. }
  60. }
  61. public RegWindowVM()
  62. {
  63. TaskContext taskContext = new TaskContext();
  64. _users = new ObservableCollection<User>(taskContext.Users);
  65. _user = new User();
  66. }
  67. }
  68. }