下午全部;
所以,我一直在使用C#和WPF开发一个应用程序。我使用富文本框显示相当数量的静态文本,比如大约1000行(行数在10到30个单词之间)
我通过将文本保存在文本文件中来插入文本。然后读取该文本文件并将其保存到字符串变量中。然后将该字符串变量放入FlowDoc中,如下所示:
public void fillTimeline(RichTextBox timeline)
{
FlowDocument myFlowDoc = new FlowDocument();
string x = System.IO.File.ReadAllText(@"path");
myFlowDoc.Blocks.Add(new Paragraph(new Run(x)));
timeline.Document = myFlowDoc;
}
一旦我构建并运行了应用程序,我发现文本非常模糊,几乎不可读。 Like this
但是,如果我将行减少到大约500,则不会出现此问题。在RichTextBox中显示那么多文本是否有问题?
我已尝试过一些方法来解决问题
这是一个已知问题吗?有什么我可以尝试的吗?我现在没有想法了。
感谢。
答案 0 :(得分:2)
尝试一次读取一行文字
List<String> Lines = new List<String>();
System.IO.StreamReader file =
new System.IO.StreamReader("c:\\test.txt");
while((line = file.ReadLine()) != null)
{
myFlowDoc.Blocks.Add(new Paragraph(new Run(x)));
Lines.Add(line);
}
file.Close();
尝试使用FlowDocumentScrollViewer而不是RichTextBox
尝试使用带有TextBlock的ListBox的行 通过虚拟化,它可以很好地执行