DÉVELOPPEMENT RAPIDE D'APPLICATIONS




Notes de cours 10

VB .net et bases de données ... suite



La base de données "GestProj"



Le data adapter object contient les propriétés qui définissent comment on se connecte à la base de données.

Les données lues par le data adapter seront stockées dans le dataset.







Je veux modifier le form Employé pour voir le nom de son département et le nom de son Directeur.

La table Employee contient un numéro de département. Pour voir les détails de départment, il faut aller dans la table Department.

Ceci est une requête simple en SQL.

Avec le Query builder c'est encore plus simple car on peut simplement choisir les tables et les colonnes, identifier la relation entre les tables et la commande SQL est générée.







Il faut ensuite re-créer le dataset.

Ne pas oublier de faire le Generate Dataset. Ceci fera que les nouvelles colonnes seront ajoutées au DataGrid.







Les "Bound controls"


Il y a une autre façon d'afficher les données dans le form.
On peut enlever le DataGrid et passer par des TextBox.

Le TextBox peut aussi être lié à un data adapter, comme le DataGrid.

D'abord, on crée des textbox correspondants aux colonnes du DataSet.

Ensuite, on spécifie le DataBinding pour chaque textbox.







Le résultat est que les données sont affichées dans le form, une ligne à la fois.






Navigation dans le form

Puisque le form affiche une ligne à la fois, il faut que je puisse naviguer à travers le dataset pour voir toutes les lignes.

Je devrai ajouter des boutons de navigation et le code pour les faire fonctionner.

L'objet BindingContext gère la navigation. Sa propriété Position identifie ma position dans le dataset. Il faut noter que Position est relatif - il mesure le déplacement à partir du début. La première ligne est à la Position 0.

Pour avancer ou reculer, je change Position.



      Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)  _

		 Handles MyBase.Load
         dsEmployee11.Clear()
         daEmployee.Fill(dsEmployee11, "employee")
     End Sub       Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)  _

		Handles btnNext.Click
         Me.BindingContext(dsEmployee11, "employee").Position = _
            (Me.BindingContext(dsEmployee11, "employee").Position) + 1

         PositionChanged()
     End Sub 
     Private Sub btnPrev_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)  _

		Handles btnPrev.Click
         Me.BindingContext(dsEmployee11, "employee").Position = _
             (Me.BindingContext(dsEmployee11, "employee").Position) - 1

         PositionChanged()
     End Sub
 
     Sub PositionChanged()
         lblPosition.Text = (((Me.BindingContext(dsEmployee11, "employee").Position + 1).ToString  _
           + " / ") _
           + Me.BindingContext(dsEmployee11, "employee").Count.ToString)
     End Sub  










Le Data Form Wizard

Une autre façon de créer un form pour la maintenance des tables est d'utiliser le Data form wizard.

Avec un right-click sur: Solution Explorer -->Add -->Add new item -->Data Form Wizard

On donne un nom au nouveau form.

On suit les directives pour créer le form.




Un nouveau form sera généré avec toutes les fonctions pour éditer la table.

On peut choisir d'afficher les forms individuels ou un data grid.








Haut de la page





Accueil          Tutoriels