Bonjour,

J'ai créé un dataset lié à ma base Access "sites" avec l'assistant de configuration de sources de données.

Dans mon form j'ai un "Combobox" (contenant une liste de sites internet) , un "Datagrid" et un bouton "Afficher".

Je voudrais dès qu'un site est sélectionné (dans ma combo) , sur clique du bouton Afficher, cela m'affiche toutes les infos du site sélectionné.

Dans mon SitesDataAdapter , j'ai créé la requete paramétrée suivante (FillByIDSites) , qui fonctionne:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT Sites.Num_Site, Sites.Num_Cat, Sites.Num_Iden, Sites.Nom_Site, Sites.Lien_Web, Sites.Dte_inscription
FROM     ((Sites INNER JOIN
                  Identifiants ON Sites.Num_Iden = Identifiants.Num_Iden) INNER JOIN
                  Categories ON Sites.Num_Cat = Categories.Num_Cat)
WHERE  (Sites.Num_Site = ?)
Voici mon 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
Imports System.Data
Imports System.Data.OleDb

Public Class Form_principal
    Dim idSites As Integer

    Private Sub Form_principal_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'TODO : cette ligne de code charge les données dans la table 'SitesDataSet.Sites'. Vous pouvez la déplacer ou la supprimer selon vos besoins.
        Me.SitesTableAdapter.Fill(Me.SitesDataSet.Sites)
        'Propriétés de la liste déroulante des sites
        Me.cmbChoixSite.SelectedIndex = -1
        Me.cmbChoixSite.SelectedText = ">>>   Sélection d'un Site   <<<"
    End Sub

    Private Sub btnAfficher_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAfficher.Click

        idSites = Me.cmbChoixSite.ValueMember
        'Configuration du gestionnaire de liaison sur la source de données
        SitesBindingSource.DataSource = Me.SitesTableAdapter.FillByIDSites(Me.SitesDataSet.Sites, idSites)
        'Liaison du gestionnaire avec les contrôles d'affichage de données
        SitesBindingNavigator.BindingSource = SitesBindingSource
        SitesDataGridView.DataSource = SitesBindingSource
    End Sub

End Class
Mon souci est qu'au moment de l'exécution de mon appli, je sélectionne le site (pas de souci) mais dès que je clique sur "Afficher", une Exception "InvalidCastException" est levée sur la ligne en gras ci-dessus.
Indiquant que
La conversion de la chaîne "Num_Site" en type 'Integer' n'est pas valide.
Dans ma base access , le type de mon champ "Num_Site" est en Numéro automatique.

Comment puis-je faire pour créer la liaison entre mon comboBox et mon datagrid?

Par avance merci.

Bonne journée