// TODO: Exercise 4: Task 5a: Enable a teacher to add a grade to a student private void AddGrade_Click(object sender, RoutedEventArgs e) { if (SessionContext.UserRole == Role.Teacher) { try { GradeDialog gd = new GradeDialog(); if (gd.ShowDialog().Value) { Grade newGrade = new Grade( SessionContext.CurrentStudent.StudentID , gd.assessmentDate.SelectedDate.Value.ToString("d") , gd.subject.SelectedValue.ToString() , gd.assessmentGrade.Text , gd.comments.Text); DataSource.Grades.Add(newGrade); } } catch (Exception ex) { string message = $"Unable to save grade.\nError: {ex.InnerException}"; MessageBox.Show(message, "Exception caught"); } Refresh(); } }
private void AddGrade_Click(object sender, RoutedEventArgs e) { // If the user is not a teacher, do nothing (the button should not appear anyway) if (SessionContext.UserRole != Role.Teacher) { return; } try { // TODO: Exercise 2: Task 3a: Use the GradeDialog to get the details of the new grade. // TODO: Exercise 2: Task 3b: Display the form and get the details of the new grade. // TODO: Exercise 2: Task 3c: When the user closes the form, retrieve the details of the assessment grade from the form // and use them to create a new Grade object. // TODO: Exercise 2: Task 3d: Save the grade. // TODO: Exercise 2: Task 3e: Refresh the display so that the new grade appears GradeDialog gd = new GradeDialog(); if (gd.ShowDialog().Value) { Grades.DataModel.Grade newGrade = new Grades.DataModel.Grade(); newGrade.AssessmentDate = gd.assessmentDate.SelectedDate.Value; newGrade.SubjectId = gd.subject.SelectedIndex; newGrade.Assessment = gd.assessmentGrade.Text; newGrade.Comments = gd.comments.Text; newGrade.StudentUserId = SessionContext.CurrentStudent.UserId; SessionContext.DBContext.Grades.Add(newGrade); SessionContext.Save(); Refresh(); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error adding assessment grade", MessageBoxButton.OK, MessageBoxImage.Error); } }
// Exercise 4: Task 5a: Enable a teacher to add a grade to a student private void AddGrade_Click(object sender, RoutedEventArgs e) { if (SessionContext.UserRole != Role.Teacher) { return; } try { GradeDialog gradeDialog = new GradeDialog(); if (gradeDialog.ShowDialog().Value) { Grade grade = new Grade(); grade.AssessmentDate = gradeDialog.assessmentDate.SelectedDate.ToString(); grade.SubjectName = gradeDialog.subject.Text; grade.Assessment = gradeDialog.assessmentGrade.Text; grade.Comments = gradeDialog.comments.Text; DataSource.Grades.Add(grade); SessionContext.CurrentTeacher.AddGrade(grade, SessionContext.CurrentStudent); this.Refresh(); } } catch (ArgumentException exception) { MessageBox.Show(exception.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void AddGrade_Click(object sender, RoutedEventArgs e) { // If the user is not a teacher, do nothing (the button should not appear anyway) if (SessionContext.UserRole != Role.Teacher) { return; } try { GradeDialog newGrade = new GradeDialog(); //New instance of GradeDialog. if (newGrade.ShowDialog().Value) //Runs when the OK button is pressed. { Grade studentGrade = new Grade //Creates a new grade, with all the inserted values and the Student ID from SessionContext. { AssessmentDate = newGrade.assessmentDate.SelectedDate.Value, SubjectId = newGrade.subject.SelectedIndex, Assessment = newGrade.assessmentGrade.Text, Comments = newGrade.comments.Text, StudentUserId = SessionContext.CurrentStudent.UserId }; SessionContext.DBContext.Grades.Add(studentGrade); //Adds the grade to the database. SessionContext.DBContext.SaveChanges(); //Saves the changes to the database. Refresh(); //Refreshes the display to showcase the new grade. } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error adding assessment grade", MessageBoxButton.OK, MessageBoxImage.Error); } }
// TODO: Exercise 4: Task 5a: Enable a teacher to add a grade to a student private void AddGrade_Click(object sender, RoutedEventArgs e) { if (SessionContext.UserRole != Role.Teacher) { return; } try { var dialog = new GradeDialog(); if (dialog.ShowDialog() == true) { var grade = new Grade() { Assessment = dialog.assessmentGrade.Text, AssessmentDate = dialog.assessmentDate.Text, Comments = dialog.comments.Text, StudentID = SessionContext.CurrentStudent.StudentID, SubjectName = dialog.subject.Text }; DataSource.Grades.Add(grade); SessionContext.CurrentStudent.AddGrade(grade); Refresh(); } } catch (Exception) { throw new ArgumentException("Could not add grade to student."); } }
//添加学生成绩 private void toolStripButton6_Click(object sender, EventArgs e) { if (dataGridView1.CurrentRow == null) { return; } var r = dataGridView1.CurrentRow.Cells; using (GradeDialog addgrade = new GradeDialog(teacher, Convert.ToInt32(r[3].Value), Convert.ToInt32(r[0].Value), r[1].Value as string, Convert.ToSingle(r[4].Value as string), Convert.ToSingle(r[5].Value as string), Convert.ToSingle(r[6].Value as string) )) addgrade.ShowDialog(); if (toolStripComboBox3.Text.Trim() != "") { string option = " AND " + Convert.ToString(dataGridView1.CurrentRow.Cells[3].Value) + " = classId "; DataTable t = GradeManager.SelectDifferentGrade(teacher.Id, option); t.Columns[0].ColumnName = "学号"; t.Columns[1].ColumnName = "姓名"; t.Columns[2].ColumnName = "学院"; t.Columns[3].ColumnName = "课程编号"; t.Columns[4].ColumnName = "平时成绩"; t.Columns[5].ColumnName = "期末成绩"; t.Columns[6].ColumnName = "总成绩"; dataGridView1.DataSource = t; } else { RefreshClassTable(); } }
private void AddGrade_Click(object sender, RoutedEventArgs e) { if (SessionContext.UserRole != Role.Teacher) //Makes the button do nothing if a Student clicks on it, since it returns immediately when the role is not a Teacher. { return; } try { GradeDialog gd = new GradeDialog(); if (gd.ShowDialog().Value) { Grade newGrade = new Grade(); //Creates a new Grade object and stores (and converts if necessary) the new grades in it. newGrade.AssessmentDate = gd.assessmentDate.SelectedDate.Value.ToString("d"); newGrade.SubjectName = gd.subject.SelectedValue.ToString(); newGrade.Assessment = gd.assessmentGrade.Text; newGrade.Comments = gd.comments.Text; DataSource.Grades.Add(newGrade); //Adds the grade to the DataSource list. SessionContext.CurrentStudent.AddGrade(newGrade); //Saves the newly added grade to the current student. Refresh(); //Execute the Refresh method so the added grade appears. } } catch (Exception ex) //Whenever an unexpected error occurs when adding a grade. { MessageBox.Show(ex.Message, "There was an error adding the grade to this student.", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void AddGrade_Click(object sender, RoutedEventArgs e) { if (SessionContext.UserRole != Role.Teacher) { return; } try { var gd = new GradeDialog(); if (gd.ShowDialog().Value) { var newGrade = new Grade { AssessmentDate = gd.assessmentDate.SelectedDate.Value.ToString("d"), SubjectName = gd.subject.SelectedValue.ToString(), Assessment = gd.assessmentGrade.Text, Comments = gd.comments.Text }; DataSource.Grades.Add(newGrade); SessionContext.CurrentStudent.AddGrade(newGrade); Refresh(); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error adding assessment grade", MessageBoxButton.OK, MessageBoxImage.Error); } }
//If the grading button is clicked on a student's assignment private void gradingButton_Clicked(object sender, RoutedEventArgs e) { //Get the assignment var item = (sender as FrameworkElement).Tag as Assignment; string gradeInput = ""; //Show the grade dialog and fetch the result GradeDialog gradeDialog = new GradeDialog("Please assign new grade (leave blank to unassign)"); if (gradeDialog.ShowDialog() == true) { gradeInput = gradeDialog.Answer; } //Submit the new result viewModel.NewResult(item, gradeInput); RefreshBindings(); }
private void AddGrade_Click(object sender, RoutedEventArgs e) { // If the user is not a teacher, do nothing (the button should not appear anyway) if (SessionContext.UserRole != Role.Teacher) { return; } try { // Use the GradeDialog to get the details of the assessment grade GradeDialog gd = new GradeDialog(); // Display the form and get the details of the new grade if (gd.ShowDialog().Value) { // When the user closes the form, retrieve the details of the assessment grade from the form // and use them to create a new Grade object Grade newGrade = new Grade(); newGrade.AssessmentDate = gd.assessmentDate.SelectedDate.Value.ToString("d"); newGrade.SubjectName = gd.subject.SelectedValue.ToString(); newGrade.Assessment = gd.assessmentGrade.Text; newGrade.Comments = gd.comments.Text; // Save the grade to the list of grades DataSource.Grades.Add(newGrade); // Add the grade to the current student SessionContext.CurrentStudent.AddGrade(newGrade); // Refresh the display so that the new grade appears Refresh(); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Error adding assessment grade", MessageBoxButton.OK, MessageBoxImage.Error); } }
//增加修改成绩 private void toolStripButton6_Click(object sender, EventArgs e) { if (dataGridView1.CurrentRow == null) { return; } var r = dataGridView1.CurrentRow.Cells; using (GradeDialog addgrade = new GradeDialog(GetSelectedTeacher(), Convert.ToInt32(r[3].Value), Convert.ToInt32(r[0].Value), r[1].Value as string, Convert.ToSingle(r[4].Value as string), Convert.ToSingle(r[5].Value as string), Convert.ToSingle(r[6].Value as string) )) addgrade.ShowDialog(); string option = ""; if (toolStripComboBox3.Text.Trim() != "") { option = " AND " + Convert.ToInt32(toolStripComboBox3.Text.Trim()) + " = teacherId "; DataTable dt = AdminManager.DisplayAllStuGra(option); dt.Columns[0].ColumnName = "课程编号"; dt.Columns[1].ColumnName = "学生ID"; dt.Columns[2].ColumnName = "学生姓名"; dt.Columns[3].ColumnName = "学院"; dt.Columns[4].ColumnName = "平时成绩"; dt.Columns[5].ColumnName = "期末成绩"; dt.Columns[6].ColumnName = "总成绩"; dataGridView1.DataSource = dt; } else { RefreshClassTable(); } }