我正在C#Winforms中创建一个文本编辑器。
我创建了第二个表单,其中包含一个richtextbox和一个向其添加文本的函数。它用于包含所有编辑的时间。
在主表单中,我创建了第二个表单的实例,每次更改文本时,我都会在第二个表单的文本框中添加一行,其中包含更改时间。
主窗体还包含一个调用实例的ShowDialog
方法的按钮。
几次后,我向第二个表单添加了新行(一个新的小时),主表单被卡住了,我不知道为什么。
这是第二种表单方法的代码:
public void AddNewLine(string text)
{
editsTextBox.AppendText(string.Format("\n{0}", text));
}
这是我打开第二个表单的地方:
private void editsButton_Click(object sender, EventArgs e)
{
editsForm.ShowDialog();
}
这是我以第二种形式更新textBox的地方:
private void rtb_TextChanged(object sender, EventArgs e)
{
string edit = string.Format("You ({0}) edited the file in {1}", name, DateTime.Now.ToString("HH:mm:ss"));
editsForm.AddNewLine(edit);
}