Mise à jour de listbox

Fermé
Nikos62 - 30 janv. 2008 à 15:17
sooprano Messages postés 33 Date d'inscription dimanche 9 décembre 2007 Statut Membre Dernière intervention 22 avril 2008 - 2 févr. 2008 à 02:52
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
A voir également:

7 réponses

phil_232 Messages postés 286 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 12 juin 2008 33
30 janv. 2008 à 23:46
" 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
0
charlesbouillault Messages postés 138 Date d'inscription mardi 13 décembre 2005 Statut Membre Dernière intervention 6 juillet 2009 6
31 janv. 2008 à 00:02
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!!!
0
phil_232 Messages postés 286 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 12 juin 2008 33
31 janv. 2008 à 00:25
éventuellement t'as un .Requery comme dans Access (dépend du control utilisé)
0
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
phil_232 Messages postés 286 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 12 juin 2008 33
31 janv. 2008 à 21:21
"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
0
charlesbouillault Messages postés 138 Date d'inscription mardi 13 décembre 2005 Statut Membre Dernière intervention 6 juillet 2009 6
2 févr. 2008 à 00:07
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
0
sooprano Messages postés 33 Date d'inscription dimanche 9 décembre 2007 Statut Membre Dernière intervention 22 avril 2008
2 févr. 2008 à 02:52
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
0