IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

[VB.net]Actualisation d'une Listbox


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 26
    Par défaut [VB.net]Actualisation d'une Listbox
    bonjour,

    Mon application utilise une base de données access.
    Dans ma fenetre principale, j'ai une ListBox qui liste certains champs de tout les enregistrements.
    J'ai une fonction permet d'inserer un nouvel enregistrement.
    Je voudrais que, quand j'appuie sur le bouton d'insertion de ce nouvel enregistrement, celui ci apparaisse dans la ListBox. En faisant un .Items.Add, je n'arrive pas a faire le lien avec les autres champs

    J'ai deja essayé de fermer la connexion(OleDbConnection.Close()) et de la réouvrir sans succés. J'ai peut être oublié de faire quelquechose mais quoi je ne sais pas.

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de Mehdi Feki
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 113
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 113
    Par défaut
    Salut, Peux-tu nous montrer un ptit bout de code commenté

  3. #3
    Rédacteur
    Avatar de cladsam
    Profil pro
    Inscrit en
    Août 2003
    Messages
    1 787
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2003
    Messages : 1 787
    Par défaut
    Citation Envoyé par mehdi_tn
    Salut, Peux-tu nous montrer un ptit bout de code commenté
    Ca s'appèle etre synchro

  4. #4
    Membre Expert
    Avatar de Mehdi Feki
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 113
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 113
    Par défaut
    Citation Envoyé par cladsam
    Ca s'appèle etre synchro
    , dommage que les secondes ne sont pas affichées

  5. #5
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 26
    Par défaut
    Voila un bout du code:

    Dans ma frame principale:

    'Je crée une requete, une connexion, envoye la requete et ferme la connexion
    strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source="MaBdd"
    strSql = "SELECT * FROM PR"
    ObjetConnection = New OleDbConnection
    ObjetConnection.ConnectionString = strConn
    ObjetConnection.Open()
    ObjetCommand = New OleDbCommand(strSql)
    ObjetDataAdapter = New OleDbDataAdapter(ObjetCommand)
    ObjetCommand.Connection() = ObjetConnection
    ObjetDataAdapter.Fill(ObjetDataSet, "PR")
    ObjetDataTable = ObjetDataSet.Tables("PR")

    For tmp = 0 To ObjetDataTable.Rows.Count - 1
    'J'insere des infos dans une ListBox (3 champs de ma bdd sur 10)
    'les autres champs seront utilisés par rapport a ce qui sélectionné dans la ListBox
    Next
    .....
    ObjetConnection.Close() 'fermeture de la connexion

    Dans ma frame Inserer je réutilise le meme systeme pour insérer un nouvel enregistrement.

    A partir de la, dans ma base de données, j'ai un nouvel enregistrement et la frame Inserer se ferme. Donc j'aimerais que ce nouvelle enregistrement apparaisse dans ma ListBox car pour l'instant je suis obligé de ferme mon application et de la rouvrir pour voir afficher mon nouvel enregistrement dans ma Listbox

  6. #6
    Membre averti
    Inscrit en
    Juillet 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 26
    Par défaut
    j'ai oublié de dire que quand ma frame Inserer se ferme, je supprime les objets de la ListBox, je rouvre ma base de données et insere les enregistrements dans la ListBox mais le nouvel enregistrement n'apparait pas.

  7. #7
    Rédacteur
    Avatar de cladsam
    Profil pro
    Inscrit en
    Août 2003
    Messages
    1 787
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2003
    Messages : 1 787
    Par défaut
    Si tu as un dataset qui contient tes données, il suffit de mettre la bonne table en dataBinding dans ta list elle se remplira toute seule

  8. #8
    Rédacteur
    Avatar de cladsam
    Profil pro
    Inscrit en
    Août 2003
    Messages
    1 787
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2003
    Messages : 1 787
    Par défaut
    Bonjour,

    Je ne comprends pas ce que tu entends par je n'arrive pas à faire le lien... pourrais-tu mettre un morceau de code significatif ?
    Une bonne méthode pour les mises a jour automatiques consiste à utiliser le dataBinding mais sans avoir plsu de précisions, j'ignore si cette piste est viable dans ton cas

    AMicalement,

    Cladsam

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 09/07/2007, 13h09
  2. [C# / ASP.NET] Comment creer une listbox dynamique
    Par arioule dans le forum ASP.NET
    Réponses: 2
    Dernier message: 06/12/2006, 22h03
  3. Réponses: 5
    Dernier message: 21/07/2006, 14h52
  4. Réponses: 6
    Dernier message: 22/05/2006, 16h16
  5. [MFC] Probleme d'actualisation d'une listbox
    Par Robleplongeur dans le forum MFC
    Réponses: 5
    Dernier message: 13/05/2004, 14h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo