Probleme: Exception.InnerException - avec une combobox - ADO.NET - Erreur de Syn

Résolu
bonnoccaz Messages postés 33 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 août 2013 - 22 févr. 2011 à 14:20
bonnoccaz Messages postés 33 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 août 2013 - 22 févr. 2011 à 16:39
Sous VB 2008 .NET - ADO.NET - ACCESS

Bonjour,

Oui j'ai trouvez pleins d'exemple sur le site.. merci..

Mais je ne sais pas l'intégrer dans une ligne de code.
--------------
Ici je sélectionne une Colonne "Nom" dans un fichier access "Table: Teste4"

'Teste4 = > le fichier access
'la colonne access = > Nom << Mais on a pas le choix de la combobox

Voici la partie du code qui fonctionne bien:

Dim MONTAG$  = "Nom"


CmdR.CommandText = "select * from Teste4 where " & MONTAG & "='" & tr.Text & "'" ' Creation de la requete SQL

--------------

Je veut juste remplacer "MONTAG" Par un ComboBox1
[u]
Par exemple avec: /u
Dim MONTAG As String  = TextBox1.Text

Erreur!
IL ME DIT AU DÉMARRAGE: de gérer une exception.
Une erreur s'est produite lors de la création du formulaire. Pour plus d'informations, consultez Exception.InnerException. L'erreur est : La référence d'objet n'est pas définie à une instance d'un objet.

----------------
J'ai même mis:
On Error Resume Next
Pour luis faire la pilule .

Ma question: il faut ajouter obligatoirement et sans alternative:
Public ReadOnly Property InnerException As Exception

Source MSDN

Un exemple, qui m'aide pas trop, mais je recherche activement..


Ou avez-vous un liens vers une contribution sous d'autre appellation, ou cette exception et gérer ?


Cdt

8 réponses

4u4me4us Messages postés 780 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 30 octobre 2013 3
22 févr. 2011 à 15:30
G pas tout compris mais pour ton erreur
"Dim MONTAG As String = TextBox1.Text". Il suffit de faire en deux temps.
1)Dim MONTAG As String
2)MONTAG = TextBox1.Text
La tu n'aurras plus d'erreur et ton code
"CommandText = "select * from Teste4 where " & MONTAG & "='" & tr.Text" reste valide.

Note :

tu peux directement changer
"CommandText = "select * from Teste4 where " & MONTAG & "='" & tr.Text" par "CommandText = "select * from Teste4 where " & TextBox1.Text
& "='" & tr.Text" et supprimer la var. MONTAG mais celement si MONTAG n'est plus utilisé.

Voila mon analyse stp tien moi au courant et sorry pour les fautes de français.
3
NHenry Messages postés 15083 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 19 septembre 2023 159
22 févr. 2011 à 14:25
Bonjour,

Pas du tout.

Quand le message s'affiche, clique sur "Détail" ensuite, regardes dans les propriétés de l'Exception pour voir les détails.

0
bonnoccaz Messages postés 33 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 août 2013
22 févr. 2011 à 15:47
Details:
{"Une erreur s'est produite lors de la création du formulaire. Pour plus d'informations, consultez Exception.InnerException. L'erreur est : La référence d'objet n'est pas définie à une instance d'un objet."}
-----
{"La référence d'objet n'est pas définie à une instance d'un objet."}
-----
DATA: {System.Collections.ListDictionaryInternal}
-----
message: "La référence d'objet n'est pas définie à une instance d'un objet."
-----
stacktrace: à demo.Form1..ctor() dans C:\\Users\\ordi\\Desktop\\travel\\2\\source5\\demo\\Form1.vb:ligne 7221"

----
Message: "Une erreur s'est produite lors de la création du formulaire. Pour plus d'informations, consultez Exception.InnerException. L'erreur est : La référence d'objet n'est pas définie à une instance d'un objet."

---
[b]La référence d'objet n'est pas définie à une instance d'un objet
/b
-------------
La référence d'objet n'est pas définie à une instance d'un objet."
-------------
'MONTAG$
'MONTAG
-------------
Il ne veut pas prendre:
Dim MONTAG As String =  TextBox1.Text

Il prend très bien:
Dim MONTAG$  = "Nom"


Problème d'environnement système??
je réfléchie sur une autre alternative, peut être mieux..

d'Autre idée pour gérer "MONTAG"
-sans combobox
-sans textbox
-sans = "Nom"
ect..

Ma requête SQL n'est pas remise en cause.
0
bonnoccaz Messages postés 33 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 août 2013
22 févr. 2011 à 15:50
Tous d'abord Mérci : Nhenry & 4u4me4us pour vos reponce rapide..

re: 4u4me4us

Ok je teste..
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bonnoccaz Messages postés 33 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 août 2013
22 févr. 2011 à 16:09
Merci

Fonctionne:
Dim MONTAG$ =  "Nom"


Ne fonctionne pas:
Dim MONTAG As String = TextBox1.Text


Fonctionne très très bien..
Dim MONTAG As String

[b]
En supprime:/b
$ = "Nom"
En ajoute:
As String

Dim MONTAG $ = "Nom" As String

"En haut"

Puis dans le script "requête SQL, on touche rien.."
CmdR.CommandText   = "select * from Teste4 where " & MONTAG & "='" & tr.Text & "'" ' Creation de la requete SQL 


Mais en ajoute juste en dessus la déclaration, ect..:
'On dit que: MONTAG = TextBox1.Text
MONTAG = TextBox1.Text


Ça fonctionne..

Pour la combobox je teste avant.. j'ai une autre idee..
0
bonnoccaz Messages postés 33 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 août 2013
22 févr. 2011 à 16:12
Puis dans le script "requête SQL, on touche rien.."
Code Visual Basic :

CmdR.CommandText = "select * from Teste4 where " & MONTAG & "='" & tr.Text & "'" ' Creation de la requete SQL



Mais en ajoute juste au dessus la déclaration, ect..:
'On dit que: MONTAG = TextBox1.Text
Code Visual Basic :

MONTAG = TextBox1.Text



Ça fonctionne..
0
bonnoccaz Messages postés 33 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 août 2013
22 févr. 2011 à 16:21
[b]Améliorer la combobox:
/b
'il affiche la combobox dans une textbox1.Text

'vue que la textbox1 récupère la valeur choisie "combobox"

'+ on ajoute dans la combobox:
TextBox1.Text =  ComboBox1_selectaccess.SelectedItem


super..

 Private Sub ComboBox1_selectaccess_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1_selectaccess.SelectedIndexChanged
        
        TextBox1.Text  = ComboBox1_selectaccess.SelectedItem
        

    End Sub

    


Bien sur il faut remplir la combobox, chaque mots sera une colonne access.

Merci..
RÉSOLUE
0
bonnoccaz Messages postés 33 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 août 2013
22 févr. 2011 à 16:39
[^^idee]
0
Rejoignez-nous