Display Course List to show a list of the courses taught in a dataGridView with one column for course ID and one column for section numbers

Viewed 13

Public Class PROG_1_Stringfellow Structure CourseData Dim courSec As String Dim instructor As String Dim roomNum As String Dim courCap As Integer Dim currEnr As Integer End Structure Dim Courses() As CourseData Private Sub PROG_1_Stringfellow_Load(sender As Object, e As EventArgs) Handles MyBase.Load Dim lines() As String = IO.File.ReadAllLines("Courses.txt") Dim n As Integer = lines.Count - 1 ReDim Courses(n) Dim line As String Dim data() As String For i As Integer = 0 To n line = lines(i) data = line.Split(","c) Courses(i).courSec = data(0) Courses(i).instructor = data(1) Courses(i).roomNum = data(2) Courses(i).courCap = CInt(data(3)) Courses(i).currEnr = CInt(data(4)) Dim query = From course In Courses Order By course.courSec Ascending Select course.courSec, course.instructor, course.roomNum, course.courCap, course.currEnr Distinct dgvCourseData.DataSource = query.ToList dgvCourseData.RowHeadersVisible = False dgvCourseData.CurrentCell = Nothing dgvCourseData.SelectionMode = False Next End Sub Private Sub btnAllSec_Click(sender As Object, e As EventArgs) Handles btnAllSec.Click Dim allSec = From course In Courses Order By course.courSec Ascending Select course.courSec, course.instructor, course.roomNum, course.currEnr Distinct dgvCourseData.DataSource = allSec.ToList dgvCourseData.RowHeadersVisible = False dgvCourseData.CurrentCell = Nothing dgvCourseData.SelectionMode = False

End Sub
Private Sub btnAvaSec_Click(sender As Object, e As EventArgs) Handles btnAvaSec.Click
    Dim avaSec = From course In Courses
                 Let spotsAvail = course.courCap - course.currEnr
                 Where spotsAvail > 0
                 Order By spotsAvail Descending, course.courSec Ascending
                 Select course.courSec, course.instructor, course.roomNum, spotsAvail
                 Distinct
    dgvCourseData.DataSource = avaSec.ToList
    dgvCourseData.RowHeadersVisible = False
    dgvCourseData.CurrentCell = Nothing
    dgvCourseData.SelectionMode = False
End Sub

Private Sub btnTeacherR_Click(sender As Object, e As EventArgs) Handles btnTeacherR.Click

    Dim input = InputBox("Enter Instructor's last name", "Teacher report")

    Dim InstructReport = From course In Courses
                         Let parts = course.instructor.Split(" "c)
                         Where parts(1) = input
                         Order By course.courSec Ascending
                         Select course.courSec, course.roomNum, course.currEnr
                         Distinct
    If InstructReport.Count = 0 Then
        MessageBox.Show("No results- invalid instuctor last name")
    End If
    dgvCourseData.DataSource = InstructReport.ToList
    dgvCourseData.RowHeadersVisible = False
    dgvCourseData.CurrentCell = Nothing
    dgvCourseData.SelectionMode = False
End Sub

Private Sub btnCourseL_Click(sender As Object, e As EventArgs) Handles btnCourseL.Click
    Dim courseLst = From course In Courses
                    Let parts = course.courSec.Split(" "c)
                    Where 


End Sub

Private Sub btnExit_Click(sender As Object, e As EventArgs) Handles btnExit.Click
    Me.Close()
End Sub

End Class

0 Answers
Related