42

是否可以完全按照图像显示带有换行符的标签文本

在此处输入图像描述

我需要准确打印标签上的文本,有人可以帮我吗,我想要的必须显示在标签上的文本将存储在字符串生成器中

4

8 回答 8

71

您可以在两行之间附加 HTML <br />。就像是:

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

使用StringBuilder您可以尝试:

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 />");
于 2012-12-14T12:11:17.767 回答
8

我知道这个线程很旧,但是......

如果您使用的是 html 编码(如AntiXSS),则之前的答案将不起作用。中断标记将呈现为文本,而不是应用回车符。您可以将您的 asp 标签包装在 pre 标记中,它将显示从后面的代码中设置的任何换行符。

例子:

<pre style="width:600px;white-space:pre-wrap;"><asp:Label ID="lblMessage" Runat="server" visible ="true"/></pre>
于 2017-07-18T14:47:38.563 回答
7

您还可以<br/>在要中断文本的位置使用。

于 2012-12-14T12:09:35.477 回答
7

您可以使用<br />换行符和&nbsp;空格。

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

输出:

First line
Second line

有关更多信息,请参阅:标签中的换行符

于 2012-12-14T12:09:48.207 回答
2

您也可以使用以下内容

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

上面的代码可以实现双倍空格。如果你想要一个意味着你只需使用
.

于 2013-03-25T11:44:30.683 回答
2

我不得不用 br 替换新行

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

或者如果你使用 xml

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

然后在后面的代码中

public string ShowLineBreaks(object text)
{
    return (text.ToString().Replace("\n", "<br/>"));
}
于 2016-06-01T15:35:37.673 回答
1

或者简单地添加一行:

Text='<%# Eval("Comments").ToString().Replace("\n","<br />") %>'
于 2018-09-30T15:30:14.680 回答
0

以下行对我有用:

lbTabRes.Text += num + " x " + i + " = " + (num * i).ToString() + "<br/> \n";
于 2020-09-30T08:58:40.397 回答