非常に長い文字列がありますが、それを RichTextBox に割り当てようとすると、次のように長い時間がかかります。
string s = "very long string";
RichTextBox obj = new RichTextBox ();
obj.Text = s;
文字列をより高速に配置する別の方法はありますか?
非常に長い文字列がありますが、それを RichTextBox に割り当てようとすると、次のように長い時間がかかります。
string s = "very long string";
RichTextBox obj = new RichTextBox ();
obj.Text = s;
文字列をより高速に配置する別の方法はありますか?
確かにあなたが探しているものではありませんが、その場で推測します. 長いテキスト (文字列) がリッチテキスト ボックスに割り当てられている間にフォームがハングして何も操作できないことが心配な場合は、代わりにスレッドでテキストを割り当ててみて、メイン フォームで作業を続けることができます。以下にサンプルコードを示します。
private void SetTextButton_Click(object sender, EventArgs e)
{
string longText = "Very Long Text";
Thread t = new Thread(() => AssignLongText(longText));
t.Start();
}
private void AssignLongText(longText)
{
Invoke(new Action(() => richTextBox1.AppendText(text)));
}
私のビールが家で終わったら、きっとこの投稿をもう一度見ようとするでしょう:)
それが役に立てば幸い。
最初に、遅延の原因を突き止めようとします。それは、画面への書き込みに関するものか、追加されたテキストの作成に関するものかです。後者についてなので、その間にstringbuilderを試して文字列を作成してください