我正在使用多行文本框,我得到的行为我无法完全解释。我用
textbox.AppendText("line \n");
将新行附加到文本框。当使用这3次时,我得到了
line
line
line
显示在文本框中。现在,我调整文本框的大小。文字变成了
line line line
也就是说,换行线消失了。我知道我应该用
textbox.AppendText("line "+ Environment.Newline);
所以我知道如何解决这个问题。我想知道为什么,当使用“\ n”时,新行最初会出现,但在调整大小时会消失。
在调整大小时,“\ n”字符被删除,因为调整大小也控制基于“\ n”的新行创建和删除,System.Env.NewLine永远不会被省略。
而不是看起来像这样的行:
textbox.AppendText("line \n");
你应该使用这一行代替:
textbox.AppendText("line "+ Environment.NewLine);
这是因为unix的换行符是\n
,但对于非unix(即Windows),它是\r\n
。调整框大小后,系统换行符将被替换,因此如果只有\n
,则会在调整大小时丢失。