2010-09-26 8 views

Répondre

4

Juste faites le TextBlock assez grand pour montrer trois lignes. TextBlock est capable d'encapsuler le texte s'il trouve newline et retour chariot dans Text.

ÉDITION: Également, assurez-vous que les retours chariot et retour chariot ne sont pas codés en dur. Ce que je veux dire est qu'il ya une différence entre ces deux:

MyString = @"Item A\r\nItem B\r\nItem C"; 

et ...

MyString = "Item A\r\nItem B\r\nItem C"; 

La deuxième chaîne affiche correctement dans le TextBlock mais le premier ne fera que s'affiche en une seule line comme "Item A \ r \ nItem B \ r \ nItem C" car les caractères de nouvelle ligne et de chariot sont codés en dur au lieu d'être des caractères d'échappement.

Vous pouvez résoudre ce problème en remplaçant les caractères de saut de ligne et de transport codés en dur avec leurs séquences d'échappement, par:

MyString = MyString.Replace("\\r\\n", "\r\n"); 

ou de préférence par:

MyString = MyString.Replace("\\r\\n", Environment.NewLine); 
+0

TextBlock est assez grand, mais il est traitement du retour chariot de nouvelle ligne –

+0

Pouvez-vous s'il vous plaît poster le xaml. Et aussi, quel est l'affichage de TextBlock? Si elle affiche "Item A \ r \ nItem B \ r \ nItem C" à la place, cela signifie que les retours chariot et retour chariot sont codés en dur. Voir ma réponse mise à jour. – Yogesh

+0

Remplacement avec Environment.NewLine a travaillé un régal ... merci –