C# RichTextBox打印结果花费的时间太长

C# RichTextBox打印结果花费的时间太长,c#,winforms,richtextbox,C#,Winforms,Richtextbox,在WinForms中,我有一个超过10000行的列表。 我必须在RichTextBox控件中打印每一行,但程序冻结,大约需要10分钟。要创建列表,程序需要3秒钟。 我的问题是:如何在不等待太久的情况下打印结果? 代码如下: for(int i=0; i < 1000; i++) { //(...) add a row } foreach (string item in list) { richTextBox1.Text += item + "\r\n"; } for(int

WinForms
中,我有一个超过10000行的列表。
我必须在
RichTextBox
控件中打印每一行,但程序冻结,大约需要10分钟。要创建列表,程序需要3秒钟。

我的问题是:如何在不等待太久的情况下打印结果?

代码如下:

for(int i=0; i < 1000; i++) {
  //(...) add a row
}

foreach (string item in list)
{
    richTextBox1.Text += item + "\r\n";
}
for(int i=0;i<1000;i++){
//(…)添加一行
}
foreach(列表中的字符串项)
{
richTextBox1.Text+=项+“\r\n”;
}
使用并将其结果分配给
richTextBox1.Text

  var sb = new StringBuilder();
  foreach (string item in list)
  {
     sb.Append(item + "\r\n");
  }
  richTextBox1.Text += sb.ToString();
使用并将其结果分配给
richTextBox1.Text

  var sb = new StringBuilder();
  foreach (string item in list)
  {
     sb.Append(item + "\r\n");
  }
  richTextBox1.Text += sb.ToString();

您应该使用StringBuilder从列表中创建完整字符串,然后将其分配给
richTextBox1.Text
您应该使用StringBuilder从列表中创建完整字符串,然后将其分配给
richTextBox1.Text