TestViewModel.cs 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. using MvvmScaffoldFrame48.DLL;
  2. using MvvmScaffoldFrame48.DLL.AuditTrail;
  3. using MvvmScaffoldFrame48.DLL.WindowsTools;
  4. using MvvmScaffoldFrame48.Model;
  5. using MvvmScaffoldFrame48.Model.StorageModel.AuditTrail;
  6. using MvvmScaffoldFrame48.ViewModel.ViewModel;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.Collections.ObjectModel;
  10. using System.Linq;
  11. using System.Text;
  12. using System.Threading.Tasks;
  13. using System.Windows.Input;
  14. namespace MvvmScaffoldFrame48.ViewModel
  15. {
  16. public class TestViewModel:BaseViewModel
  17. {
  18. #region 界面绑定属性
  19. public ObservableCollection<UserModel> Users { get; set; }
  20. private string _name;
  21. public string Name
  22. {
  23. get { return _name; }
  24. set
  25. {
  26. if (_name != value)
  27. {
  28. _name = value;
  29. OnPropertyChanged(nameof(Name));
  30. }
  31. }
  32. }
  33. private string _email;
  34. public string Email
  35. {
  36. get { return _email; }
  37. set
  38. {
  39. if (_email != value)
  40. {
  41. _email = value;
  42. OnPropertyChanged(nameof(Email));
  43. }
  44. }
  45. }
  46. #endregion
  47. #region 界面绑定事件
  48. public ICommand AddUserCommand { get; set; }
  49. public ICommand TestCommand { get; set; }
  50. #endregion
  51. #region 属性
  52. #endregion
  53. #region 绑定用Action方法
  54. private void AddUser(object obj)
  55. {
  56. UserModel user = new UserModel();
  57. user.Name = Name;
  58. user.Email = Email;
  59. UserManager.AddUser(user);
  60. OnScreenKeyboardTools.KeyBoardShow();
  61. OperationRecordManagement operationRecordManagement = new OperationRecordManagement();
  62. operationRecordManagement.InsertOperationRecord(new OperationRecordModel()
  63. {
  64. Category = "用户管理",
  65. OldMessage = "",
  66. NewMessage = "添加用户:" + user.Name,
  67. DateTime = DateTime.Now,
  68. userID = 1,
  69. IsDeleted = false
  70. });
  71. var OperationRecord = operationRecordManagement.GetAllOperationRecord();
  72. foreach (var item in OperationRecord)
  73. {
  74. Console.WriteLine($"{item.Category}:{item.OldMessage}=>{item.NewMessage},Time:{item.DateTime.ToString("g")}");
  75. }
  76. }
  77. private void Test(object obj)
  78. {
  79. Name = "小1";
  80. Email = "111@qq.com";
  81. }
  82. #endregion
  83. #region 绑定用Predicate方法
  84. private bool CanAddUser(object obj)
  85. {
  86. return true;
  87. }
  88. private bool CanTest(object obj)
  89. {
  90. return true;
  91. }
  92. #endregion
  93. #region 其他方法
  94. public TestViewModel()
  95. {
  96. Users = UserManager.GetUsers();
  97. AddUserCommand = new RelayCommand(AddUser, CanAddUser);
  98. TestCommand = new RelayCommand(Test, CanTest);
  99. }
  100. #endregion
  101. }
  102. }