RegistViewModel.cs 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.Collections.ObjectModel;
  7. namespace WpfApp4.ViewModel
  8. {
  9. public class RegistViewModel: BaseViewModel
  10. {
  11. private ObservableCollection<User> _users;
  12. private User _user;
  13. private RelayCommand _AddUser;
  14. public RelayCommand AddUser
  15. {
  16. get
  17. { return _AddUser ??
  18. (_AddUser = new RelayCommand((x) =>
  19. {
  20. HelpContext helpContext = new HelpContext();
  21. User user = User;
  22. user.Iduser = helpContext.Users.Count() + 1;
  23. helpContext.Users.Add(user);
  24. helpContext.SaveChanges();
  25. user = null;
  26. MainWindow mainWindow = new MainWindow();
  27. mainWindow.Show();
  28. foreach (var window in App.Current.Windows)
  29. {
  30. if (window is Registration registration)
  31. {
  32. registration.Close();
  33. }
  34. }
  35. }));
  36. }
  37. }
  38. public ObservableCollection<User> Users
  39. {
  40. get => _users;
  41. set
  42. {
  43. _users = value;
  44. OnPropertyChanged();
  45. }
  46. }
  47. public User User
  48. {
  49. get => _user;
  50. set
  51. {
  52. _user = value;
  53. OnPropertyChanged();
  54. }
  55. }
  56. public RegistViewModel()
  57. {
  58. HelpContext helpContext = new HelpContext();
  59. _users = new ObservableCollection<User>(helpContext.Users);
  60. _user = new User();
  61. }
  62. }
  63. }