web-dev-qa-db-ja.com

C#:TextBoxに新しい行を含む文字列を挿入する方法?

新しい行を含む文字列をどのようにTextBoxに挿入しますか?

改行文字として\nを使用してこれを行うと、機能しません。

21
CJ7

テキストボックスのmultilineプロパティをtrueに設定する必要があり、使用できます

Environment.NewLine

改行文字として。

Environment.NewLineの代わりに\ r\nを使用することもできます

TextBox1.Text = "First line\r\nSecond line"
23
Jonathan

他の回答では.Multiline = trueを設定する必要があると言われていますが、Linesプロパティを使用する場合はhaveとは思わないでしょう。既に1つの文字列としてテキストがある場合は、通常どおりTextプロパティに割り当てることができます。文字列にセパレータとして「\ n」が含まれている場合は、現在のシステムの改行を置き換えることができます。

textBox1.Text = myString.Replace("\n", Environment.NewLine);
7
EMP

最初の方法は次のとおりです。

textbox1.Text = "First " + System.Environment.NewLine + " Second";

2番目の方法は次のとおりです。

textbox1.Text = "First \r\n Second";
2
Baqar

まず、TextBox.Multilineプロパティをtrueに設定します。次に、TextBox.Linesプロパティを文字列の配列に割り当てることができます。

textbox.Lines = s.Split('\n');
1
Felix Ungman

まず、 TextBox.Multiline プロパティをtrueに設定する必要があります。

次に、テキストボックスにテキストを入力する必要があります。これには2つのオプションがあります。

  • 行を文字列の配列として設定します。

    textbox.Lines = s.Split( '\ n');

  • それ以外の場合は、テキストを設定するときに、unix/cの行末(「n」)ではなく、Windowsの行末(「\ r\n」)を使用する必要があります。コードをもう少し明確にしたい場合、これは Environment.NewLine を使用して行うことができます。

    textBox1.Text = myString.Replace( "\ n"、Environment.NewLine);

両方のタイプの行末をコードで処理する場合は、上記のいずれかを実行する前に「\ r」を削除できます。 スティングの行末記号は、それよりもはるかに大きな苦痛です!

1
Ian Ringrose