Bonjour
Je sollicite l’aide de tout le monde pour trouver une solution à un problème qui me bloque dans l’évolution de mon application.
Pour faire court, j’ai un formulaire Form4 qui sert à faire des opérations sur la table CATEGORIEPRODUIT .Dans le formulaire il y a une liste déroulante CboRechCat qui est alimentée par ce code :
L’appelle à la procédure se fait par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Sub ListeRechCat() Dim mondataset As DataSet mondataset = New DataSet() Dim dta As New SqlDataAdapter("select * from CATEGORIEPRODUIT", cnnBase) dta.Fill(mondataset, "CATEGORIEPRODUIT") With CboRechCat .DataSource = mondataset.Tables("CATEGORIEPRODUIT") .DisplayMember = "NOMCATPRODUIT" .ValueMember = "CODECATPRODUIT" End With End Sub
Tous les autres codes fonctionnent bien seulement, si je clic sur la liste déroulante il s’affiche un message d’erreur : « Aucun mappage n’existe à partir du type d’objet System.Data.DataRowView vers un type connu de fournisseur natif managé »
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyClass.Load cnnBase.ConnectionString = "Data Source=JEANNICOLAS-PC ;Initial Catalog=Facturation;Integrated Security=True" cnnBase.Open() Call ListeRechCat() End Sub
Le message s'affiche au chargement du formulaire ou quand je clic sur la liste déroulante.
J’ai aussi essayé le code suivant, mais c’est le même message qui s’affiche.
Ma question est de savoir ce qui est à la base de ce message et comment résoudre le problème.
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 Sub InitListe() Try Dim cmdRechCat As New SqlCommand, adptRechCat As New SqlDataAdapter, dsRechCat As New DataSet dsRechCat.Clear() cmdRechCat.Connection = cnnBase cmdRechCat.CommandType = CommandType.StoredProcedure cmdRechCat.CommandText = "dbo.SelectCategorieProduit2" adptRechCat.SelectCommand = cmdRechCat adptRechCat.Fill(dsRechCat) CboRechCat.DataSource = dsRechCat.Tables(0) CboRechCat.DisplayMember = "AFFICHER" CboRechCat.ValueMember = "CODECATPRODUIT" cmdRechCat = Nothing adptRechCat = Nothing dsRechCat = Nothing Catch objException As Exception MsgBox(objException.Message) End Sub
Merci pour tous les apports
Jean
Partager