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 - Comment détecter les modifications dans un Datagridview


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 29
    Par défaut VB.Net - Comment détecter les modifications dans un Datagridview
    Bonjour,

    J'utilise un DataGridView pour faire de la saisie.
    au début, la DataGridView est rempli par un DataTable

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    dataGridView.Datasource = DataTable
    Plus tard au moment de validation, comment puis-je détecter les lignes qui sont modifiées ou supprimées, etc ?

    Y-a-il un statut pour chaque ligne ?

    Merci beaucoup pour vos aides.

    Cdt,

  2. #2
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 29
    Par défaut
    J'ai trouvé, il faillait chercher du côté DataTable et non du côté DataGridView.

    Cependant, j'ai rencontré un autre problème :

    Quand je clique sur le bouton Enregistrer, le script de validation ne détecte pas le changement de la dernière cellule modifiée car le curseur y est toujour dedans.

    Comment faire par programmation pour qu'il détecte aussi la dernière cellule en modification ?

    Je vous en remercie.

    Cdt,

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par novice123 Voir le message
    Comment faire par programmation pour qu'il détecte aussi la dernière cellule en modification ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dataGridView1.EndEdit()

  4. #4
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 29
    Par défaut
    Merci à toi tomlev.

    Mais le dataGridView1.EndEdit() ne marche pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    DataGridView1.EndEdit()
     
    Dim dt_1, dt_2 As New DataTable
    dt_1 = DataGridView1.DataSource
    dt_2 = dt_1.getChanges()
     
    Dim i As Integer
    For i = 0 To dt_2.Rows.Count - 1
          MsgBox(dt_2.Rows(i).Item(1).ToString)
    Next
    n'affiche pas la ligne encours de modif, mais si je fais sortir le curseur de la cellule encours alors j'ai la dernière ligne dans ma boucle.

    Y-a-il une option à positionner pour le DataGridView par harsard ?

    Merci à toi.

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    tiens, je pensais que ça suffisait...
    essaie d'ajouter ça derrière le EndEdit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DataGridView1.CurrentRow.Selected = False

  6. #6
    Membre averti
    Inscrit en
    Juillet 2007
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 29
    Par défaut
    Ca ne marche pas non plus.
    D'autres idées ?

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par novice123 Voir le message
    Plus tard au moment de validation, comment puis-je détecter les lignes qui sont modifiées ou supprimées, etc ?
    DataTable.GetChanges()

    Citation Envoyé par novice123 Voir le message
    Y-a-il un statut pour chaque ligne ?
    Oui, chaque ligne de la DataTable a une propriété RowState

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 09/05/2014, 13h11
  2. Réponses: 0
    Dernier message: 15/07/2009, 15h52
  3. [VB.NET]Comment supprimer les lignes d'un datagridView
    Par vijeo dans le forum Windows Forms
    Réponses: 1
    Dernier message: 01/09/2006, 17h54
  4. Réponses: 11
    Dernier message: 24/08/2006, 11h22
  5. [C#] Comment empecher les modification dans un DataGrid ?
    Par layate dans le forum Windows Forms
    Réponses: 5
    Dernier message: 06/06/2005, 17h11

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