当我滚动浏览富文本框的文本时,它不会快速,流畅地滚动。对于大小最大为 1 MB 的文件,它可以很好地工作,但是如果我使用 10MB 范围内的文件,它将变得非常慢。我正在使用的 richtextbox 在名为subform的表单上。我正在做subform.richtextbox.Loadfile(filepath)
,并将面板放在Mainform上。从Mainform使用子窗体的对象,我正在调用this.richtextbox.Loadfile(filepath)
。
如果我直接运行Subform并加载public SubForm(Form form)
{
mainform = form as MainForm;
InitializeComponent();
public MyRichTextBox richtextbox;
}
之类的文件,则对同一文件的滚动效果很好。
请注意,文件本身的加载需要花费很多时间,这对我而言现在不是一个问题。解决此问题后,我将对此进行调查。我希望我的滚动和所有UI操作都能像在Notepad和Notepad ++中一样工作而不会冻结。
I have pasted the final UI,that I have created
//子表单代码
public partial class MainForm : Form
{
private void MainForm_Load(object sender,EventArgs e)
{
dumpsysform = new SubForm(this);
dumpsysform.TopLevel = false;
dumpsysform.Text = "DumpsysLog";
kernelform = new SubForm(this);
kernelform.TopLevel = false;
kernelform.Text = "KernelLog";
this.panel3.Controls.Add(adbform);
this.panel3.Controls.Add(dumpsysform);
this.panel3.Controls.Add(kernelform);
dumpsysform.Location = new Point(0,panel3.Height / 3);
kernelform.Location = new Point(0,2* panel3.Height / 3);
adbform.Show();
dumpsysform.Show();
kernelform.Show();
}
// Button to open file and read
private void btn_click(object sender,EventArgs e)
{
dumpsysform.richtextbox.richtextbox1.LoadFile(dumpsysfilepath,RichTextBoxStreamType.PlainText);
kernelform.richtextbox.richtextbox1.LoadFile(kernelfilepath,RichTextBoxStreamType.PlainText);
}
// MainForm代码
{{1}}
}