【发布时间】:2011-08-20 01:45:14
【问题描述】:
我像这样为Multiline Textbox 设置了一个值。
textBox1.Text = "Line1\r\n\r\nLine2";
但是,输出中只有一个行距。
当我读取文本框的值时,我读取了"Line1\r\nLine2";
为什么 ASP.NET 不支持多于一个的换行符?
【问题讨论】:
标签: asp.net html textbox multiline
我像这样为Multiline Textbox 设置了一个值。
textBox1.Text = "Line1\r\n\r\nLine2";
但是,输出中只有一个行距。
当我读取文本框的值时,我读取了"Line1\r\nLine2";
为什么 ASP.NET 不支持多于一个的换行符?
【问题讨论】:
标签: asp.net html textbox multiline
我遇到了同样的问题。如果我添加一个 Environment.Newline 我会在文本框中得到一个新行。但是如果我添加两个 Environment.Newline 我会得到一个新行。 在我的网络应用程序中,我使用了一个空格模块来删除所有不必要的空格。如果我禁用此模块,我的文本框中会出现两行新行。希望对您有所帮助。
【讨论】:
当页面 IsPostback 时,以下代码正常工作。但是当页面第一次加载时,文本区域中没有多个换行符。错误
textBox1.Text = "Line1\r\n\r\n\r\nLine2";
【讨论】:
textBox1.Text = "Line1" + Environment.NewLine + "Line2";
标记还需要包含 TextMode="MultiLine" (否则它将文本显示为一行)
<asp:TextBox ID="multitxt" runat="server" TextMode="MultiLine" ></asp:TextBox>
【讨论】:
textBox1.Text = "Line1\r\r\Line2";
解决了这个问题。
【讨论】:
试试这个
textBox1.Text = "Line1" + Environment.NewLine + "Line2";
对我来说工作得很好......
【讨论】:
txtMultiline.Text = "Line1" + Environment.NewLine + "Line2" + Environment.NewLine + "Line3";,它在所有浏览器中都能正常工作
txtMultiline.Text = "Line1" + Environment.NewLine + Environment.NewLine + Environment.NewLine + Environment.NewLine + "Line2" + Environment.NewLine + "Line3"; 并且工作正常
在拖动 TextBox 的同时按 F4 选择 Properties 并在 Textmode 下设置为 Multiline,multiline 对文本框的表示是它可以在 6 边上调整大小。并且不需要包含任何 newline 字符来获取多行。可能是您将其设置为多行,但您在设计时增加了文本框的大小。
【讨论】:
您需要将文本框设置为多行,这可以通过两种方式完成:
在控件中:
<asp:TextBox runat="server" ID="MyBox" TextMode="MultiLine" Rows="10" />
代码隐藏:
MyBox.TextMode = TextBoxMode.MultiLine;
MyBox.Rows = 10;
这将呈现为<textarea>
【讨论】: