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:
Voici mon code:
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 = ?)
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.
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
Indiquant queDans ma base access , le type de mon champ "Num_Site" est en Numéro automatique.La conversion de la chaîne "Num_Site" en type 'Integer' n'est pas valide.
Comment puis-je faire pour créer la liaison entre mon comboBox et mon datagrid?
Par avance merci.
Bonne journée
Partager