Issue
This Content is from Stack Overflow. Question asked by Todd Stringfellow
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
Solution
This question is not yet answered, be the first one who answer using the comment. Later the confirmed answer will be published as the solution.
This Question and Answer are collected from stackoverflow and tested by JTuto community, is licensed under the terms of CC BY-SA 2.5. - CC BY-SA 3.0. - CC BY-SA 4.0.