Retour chariot dans un messageBox [Résolu]

cs_fcolo
Messages postés
201
Date d'inscription
mercredi 8 février 2006
Dernière intervention
20 février 2007
- 11 oct. 2006 à 16:41 - Dernière réponse : Lutinore
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Dernière intervention
27 octobre 2012
- 12 oct. 2006 à 10:27
Bonjour,

Je souhaiterai afficher un MessageBox de plusieurs ligne.
Je sais que le retour chariot se fait par \n\r, si je fais MessageBox.Show("Hello\n\rWorld"); ca affichera Hello et Word sur deux lignes.

Par contre, la valeur à afficher provient d'un textBox.

Si je rempli le textBox par la chaine "Helo\n\rWorld" (sans ls guillemet bien sur) alors MessageBox.Show(textBox.Text); m'affiche sur une seule ligne la chaine "Helo\n\rWorld" (sans ls guillemet bien sur).

Savez vous comment je peux forcer l'affichage sur plusieur ligne dans un MessageBox à partir de la valeur d'un textBox?

(dans mon  cas particulier ca provient d'un fichier xml).

Merci de votre aide

f.colo
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
ricklekebekoi
Messages postés
305
Date d'inscription
mardi 11 février 2003
Dernière intervention
24 avril 2009
- 12 oct. 2006 à 04:35
3
Merci
C'est simple, tout les \kkchose que tu tape dans ton textbos sont garder en texte brut.

Essai ceci:
MessageBox.Show(textBox.Text.Replace("\\n","\n").Replace("\\r","\r");

Je ne trouve pas de manière idéale pour t'expliquer le tout, je vais essayer un truc:

Ce que je fait remplace la chaine composé "\n" composé de 2 caractère: '\' et 'n' par un seul caractère '\n'. Lorsque tu écrit dans le code la valeur \n, elle est considérée comme un seul caractère, alors que dans le textbox, il prendra cela comme une chaine composé de 2 caractères.

Enfin je ne sens pas que je suis clair, mais bon, je tenterai d'expliquer differemment si tu ne comprends pas

Eric

Merci ricklekebekoi 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 94 internautes ce mois-ci

Commenter la réponse de ricklekebekoi
fregolo52
Messages postés
1108
Date d'inscription
mercredi 15 juin 2011
Dernière intervention
10 juillet 2018
- 11 oct. 2006 à 17:11
0
Merci
Passe par String.Format (c'est bon vieux printf amélioré) :
MessageBox.Show(String.Format("Hello\nWorld"));

code dans mon appli :
string.Format("{0} \n{1}", param1, param2);
Commenter la réponse de fregolo52
fregolo52
Messages postés
1108
Date d'inscription
mercredi 15 juin 2011
Dernière intervention
10 juillet 2018
- 11 oct. 2006 à 17:18
0
Merci
Oups, j'avais pas tout lu et je viens de faire un test.
J'ai pas ton pb, MessageBox.Show(textBox.Text); s'affiche bien sur 2 lignes.
Je suis avec VS2003.
Commenter la réponse de fregolo52
Lutinore
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Dernière intervention
27 octobre 2012
- 11 oct. 2006 à 17:24
0
Merci
C'est \r\n pas \n\r.
Commenter la réponse de Lutinore
cs_fcolo
Messages postés
201
Date d'inscription
mercredi 8 février 2006
Dernière intervention
20 février 2007
- 12 oct. 2006 à 09:21
0
Merci
Merci,

effectivement ricklekebekoi, je comprend mieux pourquoi ca ne fonctionnait pas.
Avec les deuc méthodes Lutinore ca fait la même chose, mais autant bien le faire ... donc je vais mettre \r\n ^^

f.colo
Commenter la réponse de cs_fcolo
Lutinore
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Dernière intervention
27 octobre 2012
- 12 oct. 2006 à 10:27
0
Merci
Pas tout à fait fcolo, si tu écris "\r\n" dans un textbox tu auras un saut de ligne ce qui n'est pas vrai avec "\n\r". Mais bon c'est vrai que toi ton problème était au niveau de la MessgeBox en faite. ^^
Commenter la réponse de Lutinore

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.