C#-使用文本框编写日志

C#-使用文本框编写日志,c#,textbox,C#,Textbox,我是C#的新手(我最近遇到了一个RS-232问题),我正在尝试编写一个小型应用程序,在后台执行各种任务,我想创建一个消息日志,让用户了解应用程序处于哪个阶段 日志将只包含简单的单行消息 我目前使用的文本框已禁用,因此用户无法更改它。显然,我可以使用一行末尾的字符\r\n来写多行文本,但是当我要写第二组消息时,它们会写在文本框的开头,覆盖第一条消息 我可以将此更改为追加而不是覆盖吗?此外,当文本超出文本框的显示范围时,文本框是否会自动添加滚动条 textBox1.Text += "new Log

我是C#的新手(我最近遇到了一个RS-232问题),我正在尝试编写一个小型应用程序,在后台执行各种任务,我想创建一个消息日志,让用户了解应用程序处于哪个阶段

日志将只包含简单的单行消息

我目前使用的文本框已禁用,因此用户无法更改它。显然,我可以使用一行末尾的字符\r\n来写多行文本,但是当我要写第二组消息时,它们会写在文本框的开头,覆盖第一条消息

我可以将此更改为追加而不是覆盖吗?此外,当文本超出文本框的显示范围时,文本框是否会自动添加滚动条

textBox1.Text +=  "new Log Message" + Environment.NewLine;
使texbox不被禁用,但为只读,滚动条将出现,以将其添加到顶部:

textBox.Text = newText + Environment.NewLine + textBox.Text;
要附加它:

textBox.Text += Environment.NewLine + newText;

是的,会自动添加滚动条。

您可以使用以下代码附加到文本:

myTextBox.Text += myLogText + Environment.NewLine;

或者,您可以使用列表框。

更好的选择是使用:

TextBox.AppendText(string)
例如:

myTextBox.AppendText(newLogEntry + Environment.NewLine);
这使得多行文本框滚动到按钮,并避免滚动条闪烁


一切都很好,我必须启用文本框,否则滚动条不会移动,但只读也会将其整理出来!谢谢大家!!太好了,这里有个问题。当添加第一个日志条目时,开始处将有一个空换行符。不,第一行按预期使用!