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

VB.NET Discussion :

Actualiser une DataGridView après Update (BD Access)


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 506
    Par défaut Actualiser une DataGridView après Update (BD Access)
    Bonjour,

    J'aimerais pouvoir actualiser une DataGridView après Update (table Access)

    Dans ma DataGridView, j'ai plusieurs colonnes dont l'ID de l'enregistrement, qui commence à 1...

    Lorsque j'ajoute un enregistrement (exemple : en position 4), l'Id de cette ligne affiche -1

    Elle affichera "4", seulement si je ferme la form et que je la ré-ouvre...

    J'aimerais faire un style de .Refresh(), juste après l'update, pour que le -1 n'apparaisse jamais et affiche directement 4...

    Avez-vous une idée ?

    Merci d'avance

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 506
    Par défaut
    Une solution serait peut-être de :
    1. vider la DataGridView
    2. re-charger la DataGridView


    Mais je n'y arrive pas

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 506
    Par défaut
    J'ai aussi essayé avec : DataGridView1.UpdateCellValue (....)

    Comment faire pour connaitre le dernier ID_JEU de la table, et de forcer l'ID_JEU suivant avec ID_JEU + 1 ?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    505
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2006
    Messages : 505
    Par défaut Ton code
    On pourrait peut-être t'aider mieux si tu postais ton code

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 506
    Par défaut
    Rien d'extraordinaire dans le code...

    Un Form contenant une DataGridView, reliée à une table Access contenant des champs...

    Deux boutons sur la Form:
    1. Nouveau (Button5)
    2. Enregistrer (Button8)


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
            TiragesBindingSource.AddNew()
        End Sub
     
     
        Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
            On Error GoTo SaveErr
            TiragesBindingSource.EndEdit()
            TiragesTableAdapter.Update(TirageDataSet)
    SaveErr:
            Exit Sub
        End Sub
    • Si je modifie la valeur (sans préalablement créer de nouvel enregistrement) d'un champ et que je clique sur "Enregistrer", tout se passe bien...
    • Si je fais "Nouveau", que je rajoute un enregistrement et que je clique sur "Enregistrer", la nouvelle ligne s'affiche bien , mais avec un ID automatique de -1


    Maintenant :
    Si je ferme ma Form et la ré-ouvre et que je modifie une valeur dans un champs... enregistrer... tout est OK car l'ID automatique n'est plus de -1, mais a la valeur de l'ID de la table Access (normal...)
    Si je ne ferme pas la Form et que je veux modifier la valeur d'un champ, après avoir cliquer sur "Enregistrer" un picto rouge m'indique qu'il y a une erreur sur la ligne contenant l'ID -1

    Ma question... comment ne pas avoir cette idée de -1 mais directement l'ID automatique de la table Access ?

    Bonne journée à vous

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2009
    Messages : 506
    Par défaut
    J'ai trouvé...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // Rechargement des données de la source mise à jour
                    dataSet1.Clear();
                    Adapter1.Fill(dataSet1,"Tracks");

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

Discussions similaires

  1. Zone de liste Access: Comment effacer une ligne apres update
    Par saroonette dans le forum VBA Access
    Réponses: 4
    Dernier message: 12/05/2014, 10h59
  2. actualiser une page apres un click sur un lien
    Par diengkals dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 30/05/2012, 18h11
  3. actualiser une variable après une saisie dans un formulaire
    Par Onime Records dans le forum Langage
    Réponses: 1
    Dernier message: 02/10/2008, 15h56
  4. Actualiser une page après validation form
    Par toffff dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/04/2007, 18h48
  5. Actualiser une page après un "header location"
    Par salva57 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 15
    Dernier message: 10/01/2006, 22h09

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