Initialiser plusieurs variables sur une seule ligne [Résolu]

thonyboy 166 Messages postés mercredi 23 avril 2003Date d'inscription 16 février 2011 Dernière intervention - 17 sept. 2008 à 16:18 - Dernière réponse : thonyboy 166 Messages postés mercredi 23 avril 2003Date d'inscription 16 février 2011 Dernière intervention
- 18 sept. 2008 à 10:57
Bonjour

Je cherche a initialiser a 0 plusieurs variables en écrivant une seule ligne de code.

Si j'écris :
ZNom.Text ZPrenom.Text ZTel.Text = ZGsm.Text = Zemail.Text = ZSam.Text = ZServic.Text =

""

Je n'ai ni l'effect désiré et en plus j'ai une erreur
L'exception System.InvalidCastException n'a pas été gérée par le code utilisateur
  Message="La conversion de la chaîne "" en type 'Boolean' n'est pas valide."

Pourtant je n'ai que des variables strings. Je ne comprends pas.

Existe t'il une autre méthode ?

D'avance merci
Afficher la suite 

7 réponses

Répondre au sujet
cs_casy 7745 Messages postés mercredi 1 septembre 2004Date d'inscription 24 septembre 2014 Dernière intervention - 17 sept. 2008 à 20:27
+3
Utile
ZNom.Text = ZPrenom.Text = ZTel.Text = ZGsm.Text = Zemail.Text = ZSam.Text = ZServic.Text =""
Cette syntaxe à une signification bien precise en VB, ex :
ZSam.Text ZServic.Text"" est l'équivalent de ZSam.Text = (ZServic.Text ="")  ou (ZServic.Text ="") est un test pour savoir si ZServic est égal à "".
(ZServic.Text ="") renvoie True ou False suivant le résultat du test, et ne peut donc pas etre affecter à une variable de type texte. D'ou ton message d'erreur.

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_casy
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 17 sept. 2008 à 17:04
0
Utile
cette syntaxe est (je crois) acceptée en C#, mais pas en VB.NET

tu vas devoir attribuer chaque chaque zone, éventuellement en séparant par des ":" pour être sur la même ligne

çà donne



ZNom.Text string.empty : ZPrenom.Text string.empty :
ZTel.Text = string.empty :
ZGsm.Text = string.empty :
Zemail.Text = string.empty :
ZSam.Text = string.empty :
ZServic.Text = string.empty







++


Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Commenter la réponse de PCPT
cs_thierry la fronde 351 Messages postés mercredi 21 juillet 2004Date d'inscription 12 août 2009 Dernière intervention - 17 sept. 2008 à 17:50
0
Utile
bonjour
Une autre solution serait de mettre les controles dans un tableau de type objet puis d'utiliser une boucle..
dim i as integer
dim MonTableau(6) as object
MonTableau(0)=ZNom
..

sub ViderMesTB()
for i=0 to 6 step 1
MonTableau(i).text=String.empty
next
End Sub
(ou quelque comme ça)

thierry la fronde
Commenter la réponse de cs_thierry la fronde
cs_casy 7745 Messages postés mercredi 1 septembre 2004Date d'inscription 24 septembre 2014 Dernière intervention - 17 sept. 2008 à 20:28
0
Utile
Ah, j'oubliais

Par défaut, toute varaiable, avant une affectation est automatiquement initialisée à 0 pour un numérique, String.Empty pour une chaine de caractère, Nothing pour un objet, .....

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
Commenter la réponse de cs_casy
cs_casy 7745 Messages postés mercredi 1 septembre 2004Date d'inscription 24 septembre 2014 Dernière intervention - 17 sept. 2008 à 20:30
0
Utile
" ....toute variable, avant une PREMIERE affectation est ..."

Décidement c'est pas ma journée aujourd'hui

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
Commenter la réponse de cs_casy
dedenet2 372 Messages postés vendredi 27 juillet 2007Date d'inscription 22 juillet 2013 Dernière intervention - 17 sept. 2008 à 23:19
0
Utile
Bonjour ,

ZNom.Text ZPrenom.Text ZTel.Text = ZGsm.Text = Zemail.Text = ZSam.Text = ZServic.Text =
Si c'était aussi simple , ça se saurait !

A+
Commenter la réponse de dedenet2
thonyboy 166 Messages postés mercredi 23 avril 2003Date d'inscription 16 février 2011 Dernière intervention - 18 sept. 2008 à 10:57
0
Utile
Merci a tous. C'est vrai qu'en C c'est aussi simple que cela.
Commenter la réponse de thonyboy

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.