private async void CommentEditButton_Click(object sender, RoutedEventArgs e) { if (sender is Button button) { if (button.DataContext is ReviewCommentViewModel reviewComment) { //var editWindow = new ModalOkCancelWindow(); //editWindow.Width = 500; //editWindow.Height = 600; var editWindow = EditPanel; var content = new ReviewCommentEditControl(); if (content.DataContext is ReviewCommentViewModel editVM) { editVM.UpdateSource(new ReviewCommentModel()); editVM.Model.CopyFrom(reviewComment.Model); //editVM.Model.CommentReviewVotes = new ObservableCollection<ReviewVoteModel>(reviewComment.Model.CommentReviewVotes.ToList()); editVM.Review = reviewComment.Review; await editVM.Refresh(); editWindow.ModalContent = content; if (editWindow.ShowDialog() == true) { reviewComment.Model.CopyFrom(editVM.Model); await reviewComment.SaveChanges(); } } } else if (button.DataContext is CommentViewModel comment) { //var editWindow = new ModalOkCancelWindow(); //editWindow.Width = 500; //editWindow.Height = 280; var editWindow = EditPanel; var content = new CommentEditControl(); if (content.DataContext is CommentViewModel editVM) { editVM.Model = new CommentModel(); editVM.Model.CopyFrom(comment.Model); editWindow.ModalContent = content; if (editWindow.ShowDialog() == true) { comment.Model.CopyFrom(editVM.Model); await comment.SaveChanges(); } } } } }
private async void CommentAddButton_Click(object sender, RoutedEventArgs e) { if (sender is Button button) { //var editWindow = new ModalOkCancelWindow(); //editWindow.Width = 500; //editWindow.Height = 600; var editWindow = EditPanel; var content = new ReviewCommentEditControl { Header = "Add new Comment", SubmitText = "Add" }; IncidentReviewViewModel reviewVM = null; if (content.DataContext is ReviewCommentViewModel editVM) { if (ViewModel.SelectedReview != null) { reviewVM = ViewModel.SelectedReview; } else if (button.Tag is IncidentReviewViewModel currentReviewViewModel) { reviewVM = currentReviewViewModel; } if (reviewVM != null) { editVM.UpdateSource(new ReviewCommentModel(reviewVM.CurrentUserModel, reviewVM.Model)); //editVM.Model.CommentReviewVotes = new ObservableCollection<ReviewVoteModel>(reviewComment.Model.CommentReviewVotes.ToList()); editVM.Review = reviewVM; await editVM.Refresh(); editWindow.ModalContent = content; if (editWindow.ShowDialog() == true) { await reviewVM.AddCommentAsync(editVM.Model); } } } } }