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