private void GroupApplyChange(bool?isChecked, string propertyName) { if (GameItemsView != null && GameItemsView.GroupDescriptions != null) { if (isChecked == true && GameItemsView.GroupDescriptions.All(x => ((PropertyGroupDescription)x).PropertyName != propertyName)) { GameItemsView.GroupDescriptions.Add(new PropertyGroupDescription(propertyName)); } else if (isChecked == false && GameItemsView.GroupDescriptions.Any(x => ((PropertyGroupDescription)x).PropertyName == propertyName)) { GameItemsView.GroupDescriptions.Remove( GameItemsView.GroupDescriptions.First( x => ((PropertyGroupDescription)x).PropertyName == propertyName)); } DataGridGameItem.UpdateLayout(); } }
private void LoadData() { //Backup update item var backup = new GameItem(); if (_currentAction == ActionState.Update) { backup = EnglishGameHelper.CloneItem(UpdateGameItem); } //Get new list items GameItems = FileManagement.GetListGameData(); IntializeGroupData(); DataGridGameItem.UpdateLayout(); //Show data if (GameItems.Count > 0) { switch (_currentAction) { case ActionState.Add: SelectedGameItem = GameItems.First(x => x.Title == NewGameItem.Title && x.GameName == NewGameItem.GameName); break; case ActionState.Update: SelectedGameItem = GameItems.First(x => x.Title == backup.Title && x.GameName == backup.GameName); break; default: SelectedGameItem = GameItems[0]; break; } _currentAction = ActionState.Update; EditorTitle.Text = "Selected item detail"; ViewDetailItem.DataContext = UpdateGameItem; } else { AddNewGameItemClick(null, null); } CanCloneAndDeleteVisibility = GetCloneAndDeleteVisibility(); }