web-dev-qa-db-fra.com

Afficher le texte de l'étiquette avec les sauts de ligne en c #

Est-il possible d'afficher le texte de l'étiquette avec des sauts de ligne exactement comme sur l'image

enter image description here

J'ai besoin que le texte de l'étiquette soit imprimé exactement pour que quelqu'un puisse m'aider, le texte souhaité qui doit apparaître sur l'étiquette sera stocké dans un constructeur de chaînes

33
Dorababu Meka

Vous pouvez ajouter HTML <br /> entre vos lignes. Quelque chose comme:

MyLabel.Text = "SomeText asdfa asd fas df asdf" + "<br />" + "Some more text";

Avec StringBuilder vous pouvez essayer:

StringBuilder sb = new StringBuilder();
sb.AppendLine("Some text with line one");
sb.AppendLine("Some mpre text with line two");
MyLabel.Text = sb.ToString().Replace(Environment.NewLine, "<br />");
60
Habib

Vous pouvez également utiliser <br/> où vous voulez casser le texte.

7
Dev

Vous pouvez utiliser <br /> pour les sauts de ligne et &nbsp; pour les espaces.

string s = "First line <br /> Second line";

Sortie: 

First line
Second line

Pour plus d’informations, reportez-vous à ceci: Line break in Label

7
Vishal Suthar

Je sais que ce fil est vieux, mais ...

Si vous utilisez un encodage HTML (comme AntiXSS ), les réponses précédentes ne fonctionneront pas. Les balises de rupture seront rendues sous forme de texte, plutôt que d'appliquer un retour à la ligne. Vous pouvez envelopper votre étiquette asp dans une balise pré et elle s'affichera avec les sauts de ligne définis à partir du code précédent.

Exemple:

<pre style="width:600px;white-space:pre-wrap;"><asp:Label ID="lblMessage" Runat="server" visible ="true"/></pre>
5
Adam Scharp

Aussi, vous pouvez utiliser ce qui suit

@"Italian naval...<br><br>"+

Au-dessus du code, vous pouvez obtenir un double espace. Si vous voulez un seul, vous utilisez simplement
.

2
Duk

Je devais remplacer les nouvelles lignes par br

string newString = oldString.Replace("\n", "<br />");

ou si vous utilisez xml

<asp:Label ID="Label1" runat="server" Text='<%# ShowLineBreaks(Eval("Comments")) %>'></asp:Label>

Puis dans le code derrière

public string ShowLineBreaks(object text)
{
    return (text.ToString().Replace("\n", "<br/>"));
}
2
MobileMon

Ou simplement ajouter une ligne de:

Text='<%# Eval("Comments").ToString().Replace("\n","<br />") %>'
0
Hajir