Affichage à l aide de 2 datagrid View
Bonsoir
je devellope 1 petit programme sous VS 2010 à l aide de VB 10. Il comprend 1 winform divisé en deux à l'aide d un splitcontainer, chaque côté contenant 1 datagridview.
Le but du programme est à l aide de Linq to Sql (connexion à une base de données contenant 2 tables :Student et Course)
a) d afficher sur le 1er datagrid l ensemble des etudiants (Table Students)
b) et sur le deuxiem datagrid : lorsque l utilisateur selectionne 1 etudiant sur le 1er datagrid alors le 2e datagrid affichera l'ensemble des cours concernant cet etudiant.
J ai reussi à coder et a realiser 98% du codage...Une erreur (voir etoile) apparement liée à l insertion de source de données (coment le faire)
toute aide sera la bienvenue
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| Public Class MainForm
Private db As New CoursesClassesDataContext
Private Sub MainForm_Load(sender As Object, e As System.EventArgs) Handles Me.Load
Dim query = From aStudent In db.Students
Select aStudent.Id, aStudent.LastName, aStudent.Status,
aStudent.Major,
'**** Courses = aStudent.courses.count()********
Order By Id
DgvStudents.DataSource = query
End Sub
Private Sub dgvStudents_SelectionChanged() Handles DgvStudents.SelectionChanged
If dgvStudents.SelectedRows.Count = 0 Then Return
Dim studentId As Short = CShort(dgvStudents.SelectedRows(0).Cells(0).Value)
' This nested query is required in order to limit the columns appearing
' in the Courses grid.
dgvCourses.DataSource = From aCourse In (From aCourse In db.Courses
Select aCourse Where aCourse.Student_Id = studentId
Order By aCourse.Id)
Select aCourse.Id, aCourse.Credits, aCourse.Grade
'experiment with column formats
dgvCourses.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
With dgvCourses.Columns(2).DefaultCellStyle
.Format = "n"
.Alignment = DataGridViewContentAlignment.MiddleCenter
End With
End Sub
End Class |
Salutation cordiale