private int ItemToShowAfterDelete(StudentListViewModel parent) { var result = -1; if (parent != null) { StudentInfoList parentModel = (StudentInfoList)parent.Model; for (var index = 0; index < parentModel.Count; index++) { var info = parentModel[index]; if (info.StudentId == _model.StudentId) { if (parentModel.Count > index + 1) { result = parentModel[index + 1].StudentId; } else if (parentModel.Count > 1) { result = parentModel[index - 1].StudentId; } break; } } } return(result); }
public void Delete() { StudentListViewModel parent = null; var newItem = -1; if (Parent != null) { parent = Parent as StudentListViewModel; newItem = ItemToShowAfterDelete(parent); } _model.Delete(); CanCreate = true; CanSave = false; CanDelete = false; TryClose(); if (parent != null) { parent.ListItemId = newItem; } }