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 :

supprimer une ligne de datagridview


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Septembre 2010
    Messages
    168
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2010
    Messages : 168
    Par défaut supprimer une ligne de datagridview
    Bonjour,
    j'ai une datagridview et je veux supprimer une ligne avec click droit mais le problème que : quand je sélectionne la ligne que je veux il me supprime la ligne en haut c'est la ligne que je sélectionne voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     Private Sub InsertRows()
     
            '*** UNE insertion de ligne(s) ne peut se faire qu'en amont d'une ligne ou de la ligne d'une ou plusieurs cellules sélectionnées.
            If DataGridView1.SelectedCells.Count > 0 Then
                '*** dtFact représente une table de donnée et charge en mémoire les données de la table choisie du Dataset.
                '*** drFact représente une ligne de données du DataTable.
                '*** l'objet DataRow, avec ses propriétés et méthodes permet de récupérer, évaluer, insérer, supprimer et mettre à jour les valeurs du DataTable.
                '*** aireSelectionnee est un tableau qui contiendra la liste de toutes les cellules sélectionnées.
     
                Dim dtFact As DataTable = ds.Tables("DET_DEVIS")
                Dim drFact As DataRow
                Dim aireSelectionnee As ArrayList = New ArrayList
     
                For Each cell As DataGridViewCell In DataGridView1.SelectedCells
                    aireSelectionnee.Add(cell.RowIndex)
                Next
     
                '*** TRI cette liste, obtient le n° de la première et de la dernière ligne de la sélection.
                '*** EN cas de sélection multiple de cellules ou de lignes, par choix arbitraire, 
                '***    l'insertion se fera avant la ligne de moindre rang de la sélection et le nombre de lignes insérées
                '***    correspondra au nombre de lignes sélectionnée. 
                Dim premRowselect As Integer
                Dim derRowSelect As Integer
                aireSelectionnee.Sort()
                premRowselect = CInt(aireSelectionnee(0))
                derRowSelect = CInt(aireSelectionnee(aireSelectionnee.Count - 1))
                Dim nbre As Integer = 1
                For nbre = 1 To derRowSelect + 1 - premRowselect
                    drFact = dtFact.NewRow()
                    dtFact.Rows.InsertAt(drFact, premRowselect)
                Next
                '*** Efface la sélection en cours pour sélectionner uniquement la première des lignes insérées.
                DataGridView1.ClearSelection()
                DataGridView1.Rows(premRowselect).Selected = True
     
            End If
    merci d'avance
     
        End Sub

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Est-ce le bon code (InsertRows()) ?

    si oui, où est l'instruction qui supprime la row ?

  3. #3
    Membre très actif
    Inscrit en
    Septembre 2010
    Messages
    168
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2010
    Messages : 168
    Par défaut
    Bonjour,
    voici l code de supprission:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Try
                If Me.DataGridView1.GetCellCount(DataGridViewElementStates.Selected) > 0 Then
                    Dim indexLigne As Integer = (DataGridView1.CurrentRow.Index Or DataGridView1.CurrentCell.RowIndex)
                    DataGridView1.Rows(indexLigne).Selected = True
                    DataGridView1.Rows.Remove(DataGridView1.Rows(indexLigne))
                Else
                    MessageBox.Show("Veuillez effectuer une sélection.")
                End If
            Catch Ex As Exception
                MessageBox.Show(Ex.Message)
            End Try
    et voici lo code qui supprime apartir de ToolStripMenuItem:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     Private Sub SupprimerLaLigneToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SupprimerLaLigneToolStripMenuItem.Click
            DeleteRows()
            Dim i As Integer = Me.DataGridView1.CurrentRow.Index
            Try
                cmd = New SqlCommand("delete from DET_DEVIS where DEV_DET_ID=" & Me.DataGridView1.Item("DEV_DET_ID", i).Value & "", con)
                con.Open()
                cmd.ExecuteNonQuery()
            Catch ex As Exception
                MsgBox("exception :" & ex.Message)
            End Try
            con.Close()
        End Sub
    Merci d'avance

Discussions similaires

  1. supprimer une ligne dans mon Datagridview
    Par solaar dans le forum C#
    Réponses: 8
    Dernier message: 14/06/2010, 11h53
  2. supprimer une ligne datagridview vb.net
    Par gentelmand dans le forum Windows Forms
    Réponses: 3
    Dernier message: 15/04/2009, 22h43
  3. supprimer une ligne dans un datagridview
    Par thib42 dans le forum VB.NET
    Réponses: 2
    Dernier message: 16/04/2008, 18h31
  4. comment supprimer une ligne d'un datagridview?
    Par matrixdine dans le forum Windows Forms
    Réponses: 3
    Dernier message: 25/03/2008, 07h43
  5. Réponses: 4
    Dernier message: 24/09/2007, 18h36

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