Un amateur à la recherche de votre aide ... merci

cs_chrisgrand Messages postés 3 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 30 octobre 2008 - 30 oct. 2008 à 13:42
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 - 30 oct. 2008 à 20:02
 bonjour,
voici un msg erreur à la validation de la ligne de mon gridview et donc à l'exécution du code:

      le msg erreur:

La référence d'objet n'est pas définie à une instance d'un objet.



Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

Détails de l'exception: System.NullReferenceException: La référence d'objet n'est pas définie à une instance d'un objet.

Erreur source:

Ligne 53 :
Ligne 54 :         // Calcul du prix total de la ligne (penser à convertir en double pour le calcul et en string pour l'affichage)
Ligne 55 :         prixTotal.Text = Convert.ToString(Convert.ToDouble(prixUnitaire.Text) * Convert.ToDouble(quantite.Text));
Ligne 56 :





      et le code:







protected



void
COMMANDES_RowUpdating(

object
sender,

GridViewUpdateEventArgs
e){


// R‚cup‚ration du label PRIX_UNITAIRE de la ligne en cours d'‚dition






Label
prixUnitaire = (

Label
)COMMANDES.Rows[e.RowIndex].FindControl(

"PU"
);


// Idem pour la quantit‚ et le prix total






TextBox
quantite = (

TextBox
)COMMANDES.Rows[e.RowIndex].FindControl(

"QUANTITE"
);


Label
prixTotal = (

Label
)COMMANDES.Rows[e.RowIndex].FindControl(

"PRIX_TOTAL"
);


// Calcul du prix total de la ligne (penser … convertir en double pour le calcul et en string pour l'affichage)

prixTotal.Text =




Convert
.ToString(

Convert
.ToDouble(prixUnitaire.Text) *

Convert
.ToDouble(quantite.Text));


// R‚cup‚ration de la liste d‚roulante ARTICLE






DropDownList
article = (

DropDownList
)COMMANDES.Rows[e.RowIndex].FindControl(

"ARTICLE"
);


// R‚cup‚ration du Label contenant le libell‚ de l'article






Label
articleLibelle = (

Label
)COMMANDES.Rows[e.RowIndex].FindControl(

"ARTICLE_LIBELLE"
);


// Assigne le libell‚ de l'article s‚lectionn‚ au label ARTICLE_LIBELLE

articleLibelle.Text = article.SelectedItem.Text;


}







 
  avec mes compliments  




====================================
 le progrès ne vaut que s'il est partagé par tous !
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>





christophe grandjacquet - 03.81.25.81.29
====================================

3 réponses

cs_chrisgrand Messages postés 3 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 30 octobre 2008
30 oct. 2008 à 14:45
bonjour me revoilou ...

en fait je me demande si le pb ne vient pas du "Convert.ToDouble(quantite.
Text));" à cause du .
mais dans ce cas comment récupérer le contenu de mon label (ou textbox)

merci gens de bonne fortune !
 
  avec mes compliments  

==================================== le progrès ne vaut que s'il est partagé par tous !<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

christophe grandjacquet - 03.81.25.81.29
====================================
0
cs_chrisgrand Messages postés 3 Date d'inscription mercredi 30 janvier 2002 Statut Membre Dernière intervention 30 octobre 2008
30 oct. 2008 à 16:12
bonjour,

de plus en plus flou ....

j'ai modif mon code C# ainsi

// R‚cup‚ration du label PRIX_UNITAIRE de la ligne en cours d'‚dition (Idem pour la quantit‚ et le prix total)

Label prixUnitaire = (
Label)COMMANDES.Rows[e.RowIndex].FindControl(
"PU");

TextBox quantite = (
TextBox)COMMANDES.Rows[e.RowIndex].FindControl(
"QUANTITE");

Label prixTotal = (
Label)COMMANDES.Rows[e.RowIndex].FindControl(
"PRIX_TOTAL");

// Calcul du prix total de la ligne (penser … convertir en double pour le calcul et en string pour l'affichage)

double prixtot = 0;

string put = prixUnitaire.Text;

string qut = quantite.Text;

double pu =
Convert.ToDouble(put);

double qu =
Convert.ToDouble(qut);
prixtot = pu * qu;
prixTotal.Text =
Convert.ToString(prixtot);
et j'obtiens cette erreur

Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

Détails de l'exception: System.NullReferenceException: La référence d'objet n'est pas définie à une instance d'un objet.

Erreur source:

Ligne 52 :         // Calcul du prix total de la ligne (penser à convertir en double pour le calcul et en string pour l'affichage)
Ligne 53 :         double prixtot  = 0;
Ligne 54 :         string put = prixUnitaire.Text;
Ligne 55 :         string qut = quantite.Text;
Ligne 56 :         double pu = Convert.ToDouble(put);



Fichier source : e:\inetpub\publigen\www-intra-prod\wwwroot\wfgen5\WfApps\WebForms\club\OlivierMetral\bon_envl.aspx.cs    Ligne : 54 

qui peut m'aider svp !
 
  avec mes compliments  

<
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
30 oct. 2008 à 20:02
Salut,

Test la valeur de tes variable il y a en une qui est null

Exemple tu essaies de faire
un convert.tostring(null) --> exception
un toto.Tostring ou toto = null --> null.Tostring --> exception

avec le debugger tu trouveras ton probleme et les espions
Voila
0
Rejoignez-nous