web-dev-qa-db-ja.com

Multiline TextBox multiple newline

このようにMultiline Textboxの値を設定します。

textBox1.Text = "Line1\r\n\r\nLine2";

ただし、出力では1行のみです。

Textboxの値を読み取るとき、"Line1\r\nLine2"を読み取ります。

ASP.NETが複数のラインライン文字をサポートしないのはなぜですか?

24
selami

同じ問題がありました。 Environment.Newlineを1つ追加すると、テキストボックスに新しい行が1つ追加されます。しかし、2つのEnvironment.Newlineを追加すると、1つの新しい行が追加されます。私のWebアプリでは、不要な空白をすべて削除する空白モジュールを使用しています。このモジュールを無効にすると、テキストボックスに2つの新しい行が表示されます。お役に立てば幸いです。

2
TimW

テキストボックスを複数行に設定する必要があります。これは2つの方法で実行できます。

コントロール内:

<asp:TextBox runat="server" ID="MyBox" TextMode="MultiLine" Rows="10" />

コードビハインド:

MyBox.TextMode = TextBoxMode.MultiLine;
MyBox.Rows = 10;

これは<textarea>としてレンダリングされます

37
Tom Gullen
textBox1.Text = "Line1" + Environment.NewLine + "Line2";

また、マークアップにはTextMode = "MultiLine"を含める必要があります(そうでない場合は、テキストを1行として表示します)

<asp:TextBox ID="multitxt" runat="server" TextMode="MultiLine" ></asp:TextBox>
14
V4Vendetta

これを試して

textBox1.Text = "Line1" + Environment.NewLine + "Line2";

私のためにうまく働いています...

4
Harpal

ページがIsPostbackの場合、次のコードは正常に機能します。しかし、ページが最初にロードされるとき、textareaに複数の改行はありません。バグ

textBox1.Text = "Line1\r\n\r\n\r\nLine2";
1
aliye

textBox1.Text = "Line1\r\r\Line2";
問題を解決しました。

0
selami

TextBoxをドラッグしている間、プロパティのF4を押し、Multilineに設定されたTextmodeの下で、テキストボックスへの複数行の表現は、6辺でかなり大きくなる可能性があります。また、複数行を取得するためにnewline文字を含める必要はありません。複数行に設定しても、設計時にTextboxのサイズを大きくした可能性があります。