C# richTextbox中包含大量信息

C# richTextbox中包含大量信息,c#,winforms,richtextbox,C#,Winforms,Richtextbox,我有一个从文件中提取了许多行的列表,我想用这个代码将其显示为richTextbox foreach (string s in Dettaglio) { txtDettaglio.Text += s + Environment.NewLine; } Dettaglio的定义是: System.Collections.Generic.List<string> Dettaglio = new System.Collections.Generic.List<string>

我有一个从文件中提取了许多行的列表,我想用这个代码将其显示为richTextbox

foreach (string s in Dettaglio)
{
    txtDettaglio.Text += s + Environment.NewLine;
}
Dettaglio的定义是:

System.Collections.Generic.List<string> Dettaglio = new System.Collections.Generic.List<string>();
System.Collections.Generic.List Dettaglio=new System.Collections.Generic.List();
但是要完成这项任务需要花费很多时间——有其他解决方案吗?或者我不必使用richTextbox?

首先:我要使用而不是字符串连接:

foreach (string s in Dettaglio)
{
    txtDettaglio.AppendText(s);
    txtDettaglio.AppendText(Environment.NewLine);
}
使用串联可以更快地避免调用两次
AppendText

foreach (string s in Dettaglio)
{
    txtDettaglio.AppendText(s + Environment.NewLine);
}
现在它可能实际上不会更快,但这正是我要尝试开始的-
RichTextBox
的内部数据结构可能需要做一些工作才能获取
Text
属性,使用
AppendText
可以避免它必须重新分析已经处理过的文本。

首先:我要使用字符串连接,而不是字符串连接:

foreach (string s in Dettaglio)
{
    txtDettaglio.AppendText(s);
    txtDettaglio.AppendText(Environment.NewLine);
}
使用串联可以更快地避免调用两次
AppendText

foreach (string s in Dettaglio)
{
    txtDettaglio.AppendText(s + Environment.NewLine);
}

现在它可能实际上不会更快,但这正是我要尝试开始的-
RichTextBox
的内部数据结构可能需要做一些工作才能获取
Text
属性,使用
AppendText
可以避免重新分析已经处理过的文本。

使用StringBuilder可能会更快

StringBuilder sb = new StringBuilder();
foreach (string s in Dettaglio)
{
    sb.Append(s + Environment.NewLine);
}
txtDettaglio.Text = sb.ToString();

也许使用StringBuilder会更快

StringBuilder sb = new StringBuilder();
foreach (string s in Dettaglio)
{
    sb.Append(s + Environment.NewLine);
}
txtDettaglio.Text = sb.ToString();