Alimenter un combobox à partir d'un datagridview

julia Namor 435 Messages postés jeudi 27 mars 2014Date d'inscription 9 octobre 2018 Dernière intervention - 22 sept. 2018 à 11:32 - Dernière réponse : julia Namor 435 Messages postés jeudi 27 mars 2014Date d'inscription 9 octobre 2018 Dernière intervention
- 22 sept. 2018 à 21:34
Bonjour,
Dans un projet avec visual basic , j'ai crée un datagridview avec une seule colonne que j'alimente avec un combobox
je souhaiterais que lorsque j’ouvre la Form , le combobox s'alimente automatiquement avec les valeurs du datagrid et que je ne puisse pas entrer une valeur déjà excitante dans le datagrid.
Merci de votre précieuse aide
Cordialement
Afficher la suite 

Votre réponse

4 réponses

cs_Le Pivert 5450 Messages postés jeudi 13 septembre 2007Date d'inscriptionContributeurStatut 18 octobre 2018 Dernière intervention - Modifié par cs_Le Pivert le 22/09/2018 à 13:42
0
Merci
Bonjour,

comme ceci pour l'ouverture:

 Dim mavaleur As String
        For ligne As Integer = 0 To Me.DataGridView1.Rows.Count - 1 'tu parcours les lignes de la DataGridView1
            mavaleur = CStr(Me.DataGridView1.Rows(ligne).Cells(0).Value) 'mavaleur contient maintenant la valeur de la première colonne
            ComboBox1.Items.Add(mavaleur)
            ligne = ligne + 1
        Next
        ComboBox1.SelectedIndex = 0


empêcher d'entrer une valeur déjà présente:

 Dim mavaleur As String
        mavaleur = "30"
        For ligne As Integer = 0 To ComboBox1.Items.Count - 1 'tu parcours les lignes de la combobox
            If ComboBox1.Items(ligne).ToString = mavaleur Then
'on peut mettre un message
                Exit Sub
            End If
        Next
        ComboBox1.Items.Add(mavaleur)
    End Sub


Voilà



Commenter la réponse de cs_Le Pivert
julia Namor 435 Messages postés jeudi 27 mars 2014Date d'inscription 9 octobre 2018 Dernière intervention - 22 sept. 2018 à 18:17
0
Merci
Merci Beaucoup
C'est sympa
Par contre les valeurs de la datagrid se rajoutent successivement a chaque ouverture de la form.
Il faudrait genre remettre à zéro les valeurs du combo à chaque ouverture.
J'ai mis
ComboBox.1.Items.Add("")
au début du code mais le résultat n'est pas convaincant
cordialement
cs_Le Pivert 5450 Messages postés jeudi 13 septembre 2007Date d'inscriptionContributeurStatut 18 octobre 2018 Dernière intervention - 22 sept. 2018 à 18:57
comme ceci:

  Dim mavaleur As String
        ComboBox1.Items.Clear()
        For ligne As Integer = 0 To Me.DataGridView1.Rows.Count - 1  'tu parcours les lignes de la DataGridView1
            mavaleur = CStr((Me.DataGridView1.Rows(ligne).Cells(0).Value)) 'Valeur contient maintenant la valeur de la première colonne
            ComboBox1.Items.Add(mavaleur & "")
          Next
        ComboBox1.SelectedIndex = 0


@+
julia Namor 435 Messages postés jeudi 27 mars 2014Date d'inscription 9 octobre 2018 Dernière intervention - 22 sept. 2018 à 21:34
c'est tout bon
un grand merci
Commenter la réponse de julia Namor

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.