Mise à jour de listbox

Nikos62 -  
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
Configuration: Windows XP
Internet Explorer 7.0

7 réponses

  1. phil_232 Messages postés 286 Statut Membre 33
     
    " 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
  2. charlesbouillault Messages postés 144 Statut Membre 6
     
    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
  3. phil_232 Messages postés 286 Statut Membre 33
     
    éventuellement t'as un .Requery comme dans Access (dépend du control utilisé)
    0
  4. Nikos62
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. phil_232 Messages postés 286 Statut Membre 33
     
    "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
  7. charlesbouillault Messages postés 144 Statut Membre 6
     
    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
  8. sooprano Messages postés 33 Statut Membre
     
    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