2011-06-26 9 views
2

RichTextBoxの既存のデータを上書きするのではなく、値を新しい行に追加する方法はありますが、現在、RichTextBoxに値を設定する関数はありますか?あなたは[同じユーザーになりますのでC#でRichTextBoxに文字列を追加する

richTextBox2.Text = DateTime.Today + " Hello"; 
+0

ジェームズを使用しないでください](http://stackoverflow.com/users/816110/james-buttler)通常 – abatishchev

答えて

9
richTextBox2.AppendText(Environment.NewLine + DateTime.Today + " Hello"); 
0
richTextBox2.Text = "Something " + richTextBox2.Text + " and something" 
+0

@abatishchevこれにテキストを追加する関数が複数あるため、あなたの解決策はうまくいくとは思わない –

+0

これは、コントロールにたくさんのテキストがある場合、ひどく非効率的になります –

+0

これはうまくいかず、非常に奇妙なテキストになります。 – YesMan85

9
richTextBox2.AppendText(String.Format("{0} the date is {1}{2}", "Hello", DateTime.Today, Environment.NewLine)); 

、私は、あなたがログインするために単一のOpenIDを使用することをお勧めします+

+1

なぜ "+"はありませんか?読みやすくするために?それとも別の理由がありますか? – schmijos

+3

@JosuaSchmid文字列は不変です。 +を使用してn個のチェーンを作成すると(特に大きな文字列や複数のカテナネーションの場合)、n-1個の文字列が最後の文字列より1つ大きいメモリに作成されるため、一時的なメモリの浪費と多くの計算オーバーヘッドが発生します。これはなぜString.Format()を使用し、StringBuilderクラスが+ – 0xDEADBEEF

+0

@ 0xDEADBEEFを好むのですか?+を使用すると、ILコードで 'string.Concat'が表示されます... – apocalypse

1
richTextBox2.Document.Blocks.Clear(); 
richTextBox2.Document.Blocks.Add(new Paragraph(new Run("string"))); 
+0

ユーザーがWPFではなくwinformsを要求しました。 – user1027167

関連する問題