예제 #1
0
        private void FillStudentsList(Exam exam)
        {
            var allStudents = _getAllStudentsQueryHandler.Handle();

            var enrolledStudents = exam.EnrollStudents(allStudents, out var isEnoughStudents);

            if (!isEnoughStudents)
            {
                MessageBox.Show(this, "Not enough students for the exam", "Warning");
            }

            studentBindingSource.DataSource = enrolledStudents;
            dgvEnrolledStudents.Refresh();
        }
예제 #2
0
        private void RefreshStudentList()
        {
            try
            {
                var students = _getAllStudentsQueryHandler.Handle();

                if (!string.IsNullOrWhiteSpace(tbxSearch.Text))
                {
                    students = students.Where(s => s.Name.ToLower().Contains(tbxSearch.Text.Trim().ToLower()));
                }

                if (cbxSortOrder.TryGetSelectedBoundedObject <StudentComparersComboBoxItem>(out var selectedItem))
                {
                    students = students.ToArray().BubleSort(selectedItem.Comparer);
                }

                studentBindingSource.DataSource = students;
                dgvStudentList.Refresh();
            }
            catch (Exception ex)
            {
                MessageBox.Show(this, $"{ex.Message}", "Error");
            }
        }