Probleme de combobox dans un datagridview

Résolu
p.delbrayelle Messages postés 13 Date d'inscription vendredi 25 avril 2014 Statut Membre Dernière intervention 31 mars 2017 - Modifié par Whismeril le 25/04/2014 à 13:47
Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 - 25 avril 2014 à 13:47
Bonjour,
J'ai une base de données access employe (Nom, Prenom, Sexe, Adresse). Je souhaite afficher cette bdd dans un datagridview avec la colonne sexe en combobox proposant Homme, Femme.

Le problème est que lorsque j'active l'importation des données, j'ai une erreur au niveau des données de la combobox.
Mon code est le suivant :

Imports System
Imports System.Data
Imports System.Data.OleDb
Imports Microsoft.VisualBasic
Public Class Form1
    Dim Connexion As New OleDb.OleDbConnection()
    Dim AdapTContact As OleDb.OleDbDataAdapter
    Dim DtSet As New DataSet()
    Dim Sql As String
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        DataGridView1.AutoGenerateColumns = False 'empeche la datagridview de créer les colonnes toutes seules

        Dim Nc As DataGridViewColumn

        DataGridView1.Columns.Add(New DataGridViewTextBoxColumn With {.Name = "Nom", .DataPropertyName = "Nom"})
        DataGridView1.Columns.Add(New DataGridViewTextBoxColumn With {.Name = "Prenom", .DataPropertyName = "Prenom"})

        'ajoute une colonne combobox avec les valeurs restreintes à l'énumération définie plus bas
        Nc = New DataGridViewComboBoxColumn With {.Name = "Sexe", .DataPropertyName = "Sexe"} ', .DataSource = [Enum].GetValues(GetType(Sexe))}
        DataGridView1.Columns.Add(Nc)

        DataGridView1.Columns.Add(New DataGridViewTextBoxColumn With {.Name = "Adresse", .DataPropertyName = "Adresse"})
    End Sub

    Public Enum Sexe 'énumération pour la combobox
        Homme = 0
        Femme = 1
    End Enum

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim connexion As OleDbConnection = New OleDbConnection("Provider=Microsoft.ACE.Oledb.12.0;data source = C:\Users\Philippe\Desktop\BDD2.accdb")

        Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM Employe", connexion)

        connexion.Open()

        AdapTContact = New OleDbDataAdapter(cmd)
        Dim builder As OleDbCommandBuilder = New OleDbCommandBuilder(AdapTContact)
        DtSet = New DataSet()
        AdapTContact.Fill(DtSet, "Employe")

        DataGridView1.DataSource = DtSet.Tables("Employe").DefaultView
        connexion.Close()
        connexion = Nothing
    End Sub
End Class


Merci de votre aide.

1 réponse

Whismeril Messages postés 19025 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 19 avril 2024 656
25 avril 2014 à 13:47
Ajout de la coloration syntaxique, voir ici pour tes prochains message.
0
Rejoignez-nous