我是C#的新手(最近我遇到了RS-232问题),我正在尝试编写一个小应用程序,它在幕后执行各种任务,我想创建一个消息日志,以便让用户在应用程序的哪个阶段更新在.
日志只包含简单的一行消息.
我目前正在使用禁用的文本框,以便用户无法更改它.我显然可以使用行末尾的\ r \n字符来执行多个文本行,但是当我来写第二组消息时,它们会在文本框的开头写入,覆盖第一条消息.
我可以将其更改为追加而不是覆盖吗?此外,当文本超出框可以显示时,文本框是否会自动添加滚动条?
textBox1.Text += "new Log Message" + Environment.NewLine;
Run Code Online (Sandbox Code Playgroud)
使texbox不被禁用,但只读,并且会出现滚动条
更好的选择是使用:
TextBox.AppendText(string)
Run Code Online (Sandbox Code Playgroud)
例如:
myTextBox.AppendText(newLogEntry + Environment.NewLine);
Run Code Online (Sandbox Code Playgroud)
这使得多行文本框滚动到按钮以及避免滚动条闪烁。
MSDN 上的 TextBox.AppendText(string)