Mise à jour de listbox
Nikos62
-
sooprano Messages postés 33 Statut Membre -
sooprano Messages postés 33 Statut Membre -
Bonjour,
j'utilse vb.net et sql server 2005.Je dois remplir une base de données par rapport à une interface vb. Je dispose d'une listbox UTILISATEURS avec le nom des gens déjà enregistrés. Mon problème est le suivant : quand j'ajoute un utilisateur via mon appli il va bien dans la base de données mais je dois redémarrer mon appli vb pour l'avoir dans ma listbox. J'aimerai qu'il s'ajoute directement, je sais que cela est possible mais je ne trouve vraiment pas de réponse !! Je vous donne mon code :
[Private Sub bt_ajouter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_ajouter.Click
Dim ajout As VariantType
ajout = MsgBox("Voulez vous ajouter cet utilisateur ?", MsgBoxStyle.OkCancel + MsgBoxStyle.Exclamation, "Alerte")
If ajout = vbOK Then
Dim utils As SqlCommand = conn.CreateCommand
utils.CommandText = "insert into UTILISATEURS (nom, prenom, société, grade, actif, mail, login, mdp) values ('" & txtbox_nom.Text & "', '" & txtbox_prenom.Text & "', '" & txtbox_societe.Text & "', '" & txtbox_grade.Text & "', '" & txtbox_actif.Text & "', '" & txtbox_mail.Text & "', '" & txtbox_deflog.Text & "', '" & txtbox_defmdp.Text & "')"
utils.ExecuteNonQuery()
End If
End Sub
End Class]
merci de vos réponses !! Nicolas
j'utilse vb.net et sql server 2005.Je dois remplir une base de données par rapport à une interface vb. Je dispose d'une listbox UTILISATEURS avec le nom des gens déjà enregistrés. Mon problème est le suivant : quand j'ajoute un utilisateur via mon appli il va bien dans la base de données mais je dois redémarrer mon appli vb pour l'avoir dans ma listbox. J'aimerai qu'il s'ajoute directement, je sais que cela est possible mais je ne trouve vraiment pas de réponse !! Je vous donne mon code :
[Private Sub bt_ajouter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bt_ajouter.Click
Dim ajout As VariantType
ajout = MsgBox("Voulez vous ajouter cet utilisateur ?", MsgBoxStyle.OkCancel + MsgBoxStyle.Exclamation, "Alerte")
If ajout = vbOK Then
Dim utils As SqlCommand = conn.CreateCommand
utils.CommandText = "insert into UTILISATEURS (nom, prenom, société, grade, actif, mail, login, mdp) values ('" & txtbox_nom.Text & "', '" & txtbox_prenom.Text & "', '" & txtbox_societe.Text & "', '" & txtbox_grade.Text & "', '" & txtbox_actif.Text & "', '" & txtbox_mail.Text & "', '" & txtbox_deflog.Text & "', '" & txtbox_defmdp.Text & "')"
utils.ExecuteNonQuery()
End If
End Sub
End Class]
merci de vos réponses !! Nicolas
Configuration: Windows XP Internet Explorer 7.0
7 réponses
-
" utils.ExecuteNonQuery()" ???
utils.ExecuteQuery(), ça n'irait pas ?
n'oublies pas
Set utils = Nothing
Set ajout = Nothing
ou mieux
Dim ajout As Long
et
'Set ajout = Nothing -
tu n'a qu'a recharger ta listebox, plutot si tu utilise un recordset, tu le ferme puis le réouvre et tu recharge ta listbox, et la elle sera mise a jour!!!
-
éventuellement t'as un .Requery comme dans Access (dépend du control utilisé)
-
Bonjour,
En fait, le "execute.query()", vbl ne veut pas le prendre !!
Pour ce qui est du recordset, c'est le recordset que j'ouvre et réouvre ou mon programme ??
Sinon j'ai aussi beaucoup entendu parler du DoEvents mais vb me le prend pas non plus !!! Si quelqu'un a des explications ?!?
Sinon merci pour vos réponses !!!
Bonne journée -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
"En fait, le "execute.query()", vbl ne veut pas le prendre !!"
c'est normal, car c'est vba
"Pour ce qui est du recordset, c'est le recordset que j'ouvre et réouvre ou mon programme ??"
pas très clair
sur le OnClick sur la combo tu fais un Requery
pas besoin de redémarrer le programme
suffit de "rafraichir" la liste -
Moi ce que je disait simplement c'est de fermer le recordset par monrecodset.close puis de le réouvrire et ensuite de recharget ta liste!!! Sans pour autant de fermer ton application
-
bon moi j vois ke tu dois raffraichir ta base de donnée achque fois ke tu fé un enregistrement exemple si tu utilise Data par exemple alors ta ka mettre Data1.refresh dans List box et voila