private void ExecuteEditQuestionCommand(Object parameter) { var view = new TecherFormAddAndEditQuestions(); var vm = new AddEditQuestionViewModel(); vm.Question = new Question() { Answers = new List <Answer>(SelectedQuestion.Answers), Id = SelectedQuestion.Id, Content = SelectedQuestion.Content, Created = SelectedQuestion.Created, Modifiyed = SelectedQuestion.Modifiyed, Image = SelectedQuestion.Image }; vm.AnswerCollection = new ObservableCollection <Answer>(vm.Question.Answers); vm.Window = view; view.DataContext = vm; var result = view.ShowDialog(); if (result.HasValue && result.Value) { vm.Question.Answers = new List <Answer>(vm.AnswerCollection); var editResult = DBDataSource.EditQuestion(vm.Question); if (editResult) { QuestionCollection = new ObservableCollection <Question>(DBDataSource.GetQuestions()); } } }