public MainVm() { AppliedCommands = new Stack <CommandWithUserState>(); Users = new ObservableCollection <User>( new User[] { new User { Name = "test1", Age = 15 }, new User { Name = "test2", Age = 10 } }); Edit = new Mvvm1125.MvvmCommand( () => { EditUser = new CommandWithUserState(SelectedUser); NotifyPropertyChanged("EditUser"); }, () => SelectedUser != null); Apply = new Mvvm1125.MvvmCommand( () => { EditUser.Execute(null); AppliedCommands.Push(EditUser); EditUser = null; NotifyPropertyChanged("EditUser"); }, () => !(SelectedUser == null || EditUser == null)); Undo = new Mvvm1125.MvvmCommand( () => { var lastCommand = AppliedCommands.Pop(); lastCommand.Undo(); }, () => AppliedCommands.Count != 0); }
public void SetModel(Model model) { this.model = model; Items = model.GetItems(); model.ItemsChanged += Model_ItemsChanged; CreateItem = new Mvvm1125.MvvmCommand( () => { PageContainer.ChangePageTo(PageType.CreateItem); }, () => true); }
public void SetModel(Model model) { this.model = model; Items = model.GetItems(); BackToList = new Mvvm1125.MvvmCommand( () => PageContainer.ChangePageTo(PageType.ListItems), () => true); CreateItem = new Mvvm1125.MvvmCommand( () => { if (model.TryJoin(FirstItem, SecondItem)) { Message = "Вы создали новый предмет!"; } else { Message = "Невозможно!"; } NotifyPropertyChanged("Message"); }, () => FirstItem != null & SecondItem != null); BaseItems = new List <BaseItem>(); BaseItems.Add(new BaseItem { Name = "Корень имбиря", CreateBaseItem = new Mvvm1125.MvvmCommand( () => model.AddItem(new Item { Name = "Корень имбиря" }), () => true) }); BaseItems.Add(new BaseItem { Name = "Хлеб", CreateBaseItem = new Mvvm1125.MvvmCommand( () => model.AddItem(new Item { Name = "Хлеб" }), () => true) }); BaseItems.Add(new BaseItem { Name = "Шерсть", CreateBaseItem = new Mvvm1125.MvvmCommand( () => model.AddItem(new Item { Name = "Шерсть" }), () => true) }); model.ItemsChanged += Model_ItemsChanged; }
public ViewModelPage1(Model model, PageContainer pageContainer) { this.model = model; model.PeopleChanged += Model_PeopleChanged; People = new ObservableCollection <Person>(model.GetPeople()); this.pageContainer = pageContainer; CreatePerson = new Mvvm1125.MvvmCommand( () => { pageContainer.CreatePagePersonEdit(); }, () => true); EditPerson = new Mvvm1125.MvvmCommand( () => { pageContainer.CreatePagePersonEdit(SelectedPerson); }, () => SelectedPerson != null); }
public void SetModel(Model model) { this.model = model; Items = model.GetItems(); CreateItem = new Mvvm1125.MvvmCommand( () => { if (model.TryJoin(FirstItem, SecondItem)) { PageContainer.ChangePageTo(PageType.ListItems); } }, () => FirstItem != null && SecondItem != null); BaseItems = new List <BaseItem>(); BaseItems.Add(new BaseItem { Name = "Корень имбиря", CreateBaseItem = new Mvvm1125.MvvmCommand( () => { model.AddItem(new Item { Name = "Корень имбиря" }); }, () => true) }); BaseItems.Add(new BaseItem { Name = "Шкура с жопы дракона", CreateBaseItem = new Mvvm1125.MvvmCommand( () => { model.AddItem(new Item { Name = "Шкура с жопы дракона" }); }, () => true) }); model.ItemsChanged += Model_ItemsChanged; OpenRecipes = new Mvvm1125.MvvmCommand( () => { PageContainer.ChangePageTo(PageType.EditRecipes); }, () => true); }