MainWindowViewModel.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using Avalonia.Controls;
  2. using Microsoft.EntityFrameworkCore;
  3. using ReactiveUI;
  4. using RegAuth.Models;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. namespace RegAuth.ViewModels
  8. {
  9. public class MainWindowViewModel : ViewModelBase
  10. {
  11. public static MainWindowViewModel Instance;
  12. public static _43pBezaeva2Context myConnection = new _43pBezaeva2Context();
  13. List<User> _listUsers;
  14. public List<User> SortUsers { get => _listUsers; set => this.RaiseAndSetIfChanged(ref _listUsers, value); }
  15. int role = 1;
  16. public MainWindowViewModel()
  17. {
  18. Instance = this;
  19. SortUsers = myConnection.Users.ToList();
  20. // Проверяем наличие пользователей с ролью админа
  21. if (SortUsers.Any(user => user.Roleid == 1))
  22. {
  23. Uc = new Main(); // Устанавливаем UserControl на Main
  24. }
  25. else
  26. {
  27. Uc = new Adminadd(); // Меняем UserControl на Adminadd
  28. }
  29. }
  30. private UserControl _uc;
  31. public UserControl Uc { get => _uc; set => this.RaiseAndSetIfChanged(ref _uc, value); }
  32. public void ChangeControl(UserControl newControl)//манипуляция контролом
  33. {
  34. Uc = newControl;
  35. }
  36. }
  37. }