using MvvmScaffoldFrame48.DLL; using MvvmScaffoldFrame48.Model; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Input; namespace MvvmScaffoldFrame48.ViewModel { public class MainViewModel : BaseViewModel { #region 界面绑定属性 public ObservableCollection Users { get; set; } private string _name; public string Name { get { return _name; } set { if (_name != value) { _name = value; OnPropertyChanged(nameof(Name)); } } } private string _email; public string Email { get { return _email; } set { if (_email != value) { _email = value; OnPropertyChanged(nameof(Email)); } } } #endregion #region 界面绑定事件 public ICommand AddUserCommand { get; set; } public ICommand TestCommand { get; set; } #endregion #region 属性 #endregion #region 绑定用Action方法 private void AddUser(object obj) { UserModel user = new UserModel(); user.Name = Name; user.Email = Email; UserManager.AddUser(user); } private void Test(object obj) { Name = "小1"; Email = "111@qq.com"; } #endregion #region 绑定用Predicate方法 private bool CanAddUser(object obj) { return true; } private bool CanTest(object obj) { return true; } #endregion #region 其他方法 public MainViewModel() { Users = UserManager.GetUsers(); AddUserCommand = new RelayCommand(AddUser, CanAddUser); TestCommand = new RelayCommand(Test, CanTest); } #endregion } }