Supprimer ligne datagridview selon selection combobox

Messages postés
6
Date d'inscription
vendredi 22 mars 2019
Statut
Membre
Dernière intervention
25 mars 2019
-
Bonjour,
J'ai creer un datagridview depuis une table access avec des combobox permettant de filtrer les donnees seulement qund je selectionne par exemple un client avec la combobox il me surligne la ligne mais laisse les autres alors que j'aimerais voir uniquement les lignes concernees.
Malgre mes recherches sur differents forums, impossible de trouver

Voici le code qui permet de remplir le dgv et les combobox et de selectionner
        
connexion = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\ITDEV\Project\Tool_Processing\Tool_Processing\ToolDatabaseVB_be.accdb"
        cn = New OleDbConnection(connexion)

        Dim DtSet As New DataSet()

        Dim UneTable1 As New DataTable
        Dim UneTable2 As New DataTable
        Dim UneTable3 As New DataTable
        Dim UneTable4 As New DataTable
        Dim UneTable5 As New DataTable

        Dim cn1 As New OleDbDataAdapter("select distinct PN from tblToolRequisition Order by PN asc", cn)  ' tblPN
        Dim cn2 As New OleDbDataAdapter("select distinct UCASE(CustomerName) as CustomerName from tblToolRequisition", cn) ' tblCustomer
        Dim cn3 As New OleDbDataAdapter("select distinct ToolDRG from tblToolRequisition Order by ToolDRG asc", cn) ' tblTool
        Dim cn4 As New OleDbDataAdapter("select distinct RequistionNum from tblToolRequisition Order by RequistionNum asc", cn) ' tblRequisition
        Dim cn5 As New OleDbDataAdapter("Select ReqDate, RequistionNum, Priority, UCASE(CustomerName) as CustomerName, PN, PartRev, ToolDRG, ToolRev, Description, Quantity, DueDate, RequiredBy, StatusID, DeptName,Operation, ToolNotes, ASSYID from tblToolRequisition", cn)

        cn1.Fill(UneTable1)
        cn2.Fill(UneTable2)
        cn3.Fill(UneTable3)
        cn4.Fill(UneTable4)
        cn5.Fill(UneTable5)

        DtSet.Tables.Add(UneTable1)
        DtSet.Tables.Add(UneTable2)
        DtSet.Tables.Add(UneTable3)
        DtSet.Tables.Add(UneTable4)
        DtSet.Tables.Add(UneTable5)

        DtSet.Tables(0).TableName = "tblPN"
        DtSet.Tables(1).TableName = "tblCustomer"
        DtSet.Tables(2).TableName = "tblTool"
        DtSet.Tables(3).TableName = "tblRequisition"
        DtSet.Tables(4).TableName = "tblToolRequisition"

        DataGridView1.DataSource = DtSet.Tables("tblToolRequisition")

        ComboBox1.DataSource = DtSet.Tables("tblPN")
        ComboBox1.DisplayMember = "PN"

        ComboBox2.DataSource = DtSet.Tables("tblCustomer")
        ComboBox2.DisplayMember = "CustomerName"

        ComboBox3.DataSource = DtSet.Tables("tblTool")
        ComboBox3.DisplayMember = "ToolDRG"

        ComboBox4.DataSource = DtSet.Tables("tblRequisition")
        ComboBox4.DisplayMember = "RequistionNum"
    
Private Sub LesComboBox_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged, ComboBox2.SelectedIndexChanged, ComboBox3.SelectedIndexChanged
        Dim IndexColonne As Integer
        Dim IndexLigne As Integer
        DataGridView1.ClearSelection()

        Select Case sender.name
            Case "ComboBox1"
                IndexColonne = 4
            Case "ComboBox2"
                IndexColonne = 3
            Case "ComboBox3"
                IndexColonne = 6
            Case "ComboBox4"
                IndexColonne = 1
        End Select
        For IndexLigne = 0 To DataGridView1.Rows.Count - 1
            Try
                If DataGridView1.Item(IndexColonne, IndexLigne).Value = sender.Text Then
                    DataGridView1.Rows(IndexLigne).Selected = True
                End If
            Catch
            End Try
        Next
    End Sub


Merci d'avance pour vos reponses
Afficher la suite 

Votre réponse

4 réponses

Messages postés
13132
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
21 avril 2019
354
0
Merci
Bonjour
Je ne voies pas le rapport entre ton titre et le corps de la question, alors je vais répondre au corps.

Entre le dataset et le datagridview mets un bindingsource.
Lui peut être filtré comme tu le souhaites
paradize99
Messages postés
6
Date d'inscription
vendredi 22 mars 2019
Statut
Membre
Dernière intervention
25 mars 2019
-
desole je me suis emmelee les pinceaux entre 2 questions
Commenter la réponse de Whismeril
Messages postés
6
Date d'inscription
vendredi 22 mars 2019
Statut
Membre
Dernière intervention
25 mars 2019
0
Merci
J'ai essayé de mettre un binding source mais quand j'avais essayé je ne pouvais plus filtrer les combobox
Commenter la réponse de paradize99
Messages postés
488
Date d'inscription
mardi 24 octobre 2000
Statut
Membre
Dernière intervention
23 mars 2019
3
0
Merci
salut
avec quoi programmes tu (visual studio, vb express …)?
Commenter la réponse de ManuAntibes
Messages postés
6
Date d'inscription
vendredi 22 mars 2019
Statut
Membre
Dernière intervention
25 mars 2019
0
Merci
avec visual studio 2017
Commenter la réponse de paradize99

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.