Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

URGENT : Problème ajout de ligne dans un datagrid

4 réponses
Avatar
C. Vidal
Bonjour à tous,

Je rencontre un problème lorsque j'essaie d'ajouter une ligne dynamiquement
dans l'un de mes datagrid.
En effet, en cliquant sur un bouton je souhaite ajouter une ligne.
Voici le code de mon bouton

Dim NewRow As DataRow
NewRow = Myds.Tables("PIECES_CORPS").NewRow

Myds.Tables("PIECES_CORPS").Rows.Add(NewRow)

Au lieu de m'ajouter une ligne, le programme sort de la procédure et
j'obtiens le message suivant :

Une exception non gérée du type 'System.NullReferenceException' s'est
produite dans system.windows.forms.dll
Informations supplémentaires : La référence d'objet n'est pas définie à une
instance d'un objet.

Auriez vous une idée sur l'origine de ce problème? J'ai vérifié les
réfernces de mon projets et à mon avis elles sont correctes....

Ce qui m'énerve, c'est que j'ai déjà utilisé cette méthode dans une
application et cela fonctionne à la perfection.

Merci d'avance pour votre aide.

C. Vidal

4 réponses

Avatar
cpeltier
bon ce n'est pas forcément une réponse ...
juste une piste
Dans un contexte différent (accès aux données) j'ai obtenu le même message
"La référence d'objet n'est pas définie à une instance d'un objet". je me
suis cassé la tête, avant de m'apercevoir que j'avais changé de version de
base de donnée et oublié de recréer une colonne à laquelle je faisais
référence dans mon instruction sql ...

sigh ...


"C. Vidal" wrote:

Bonjour à tous,

Je rencontre un problème lorsque j'essaie d'ajouter une ligne dynamiquement
dans l'un de mes datagrid.
En effet, en cliquant sur un bouton je souhaite ajouter une ligne.
Voici le code de mon bouton

Dim NewRow As DataRow
NewRow = Myds.Tables("PIECES_CORPS").NewRow

Myds.Tables("PIECES_CORPS").Rows.Add(NewRow)

Au lieu de m'ajouter une ligne, le programme sort de la procédure et
j'obtiens le message suivant :

Une exception non gérée du type 'System.NullReferenceException' s'est
produite dans system.windows.forms.dll
Informations supplémentaires : La référence d'objet n'est pas définie à une
instance d'un objet.

Auriez vous une idée sur l'origine de ce problème? J'ai vérifié les
réfernces de mon projets et à mon avis elles sont correctes....

Ce qui m'énerve, c'est que j'ai déjà utilisé cette méthode dans une
application et cela fonctionne à la perfection.

Merci d'avance pour votre aide.

C. Vidal





Avatar
C. Vidal
Salut,

Bon je viens de trouver mon erreur qui me bloque depuis un long moment....

Je viens de m'apercevoir que, pour gagner du temps, j'ai bêtement recopier
une classe d'un autre projet qui fait référence à un objet que je n'utilise
pas dans mon projet actuel...

He oui, je sais... Quelle idiote!!!!

Désolée de vous avoir ennuyés pour une erreur d'étourderie


C. Vidal

"C. Vidal" a écrit dans le message de news:
uJEB27U$
Bonjour à tous,

Je rencontre un problème lorsque j'essaie d'ajouter une ligne
dynamiquement dans l'un de mes datagrid.
En effet, en cliquant sur un bouton je souhaite ajouter une ligne.
Voici le code de mon bouton

Dim NewRow As DataRow
NewRow = Myds.Tables("PIECES_CORPS").NewRow

Myds.Tables("PIECES_CORPS").Rows.Add(NewRow)

Au lieu de m'ajouter une ligne, le programme sort de la procédure et
j'obtiens le message suivant :

Une exception non gérée du type 'System.NullReferenceException' s'est
produite dans system.windows.forms.dll
Informations supplémentaires : La référence d'objet n'est pas définie à
une instance d'un objet.

Auriez vous une idée sur l'origine de ce problème? J'ai vérifié les
réfernces de mon projets et à mon avis elles sont correctes....

Ce qui m'énerve, c'est que j'ai déjà utilisé cette méthode dans une
application et cela fonctionne à la perfection.

Merci d'avance pour votre aide.

C. Vidal



Avatar
GG
Bonjour C. Vidal

La seule façon que j'ai réussie à reproduire l'erreur, c'est en omettant de
créer la table pour le dataset.
Peut-être as-tu une petite faute de frappe dans le nom de la table ou bien
la table n'a pas été ajoutée au dataset

Myds.Tables.Add("PIECES_CORPS")

Cordialement

GG

"C. Vidal" a écrit dans le message de news:
uJEB27U$
Bonjour à tous,

Je rencontre un problème lorsque j'essaie d'ajouter une ligne
dynamiquement dans l'un de mes datagrid.
En effet, en cliquant sur un bouton je souhaite ajouter une ligne.
Voici le code de mon bouton

Dim NewRow As DataRow
NewRow = Myds.Tables("PIECES_CORPS").NewRow

Myds.Tables("PIECES_CORPS").Rows.Add(NewRow)

Au lieu de m'ajouter une ligne, le programme sort de la procédure et
j'obtiens le message suivant :

Une exception non gérée du type 'System.NullReferenceException' s'est
produite dans system.windows.forms.dll
Informations supplémentaires : La référence d'objet n'est pas définie à
une instance d'un objet.

Auriez vous une idée sur l'origine de ce problème? J'ai vérifié les
réfernces de mon projets et à mon avis elles sont correctes....

Ce qui m'énerve, c'est que j'ai déjà utilisé cette méthode dans une
application et cela fonctionne à la perfection.

Merci d'avance pour votre aide.

C. Vidal



Avatar
Zoury
Salut!

NewRow = Myds.Tables("PIECES_CORPS").NewRow



ici, "PIECES_CORPS" ne doit pas désigner le nom logique de la table dans la
BD, mais le nom de la clé de la DataTable représentant ta table dans le
DataSet...

car je suis certain que ceci fonctionne
NewRow = Myds.Tables(0).NewRow



sinon, montre nous le code de création du DataSet...


--
Cordialement
Yanick
MVP pour Visual Basic