Winform 中 TextBox 换行问题解析(转)
winform 中 TextBox 的 Multiline属性设置为 true ,敲入几个字符和几个回车,然后保存到数据库,再从数据库中读取出来赋值给TextBox,换行符丢失。以前遇到这问题,没太在意,只是将读取出的字符串中的"\n"替换为"\r\n"解决问题。
今天又遇到这个问题,简单试验了一下找出了其中的原因。
· TextBox 中换行符为: "\r\n"。
· Windows
中的换行符(即:Environment.NewLine) 为 "\r\n"
· MessageBox.Show() 的换行符为 "\n"
·
Console 的换行符为 "\n"
从数据库中读取出来后,换行符不知为啥变成 "\n","\r" 莫名的丢失了。为正确显示格式要将 "\n"
替换为 "\r\n"
换行符还因平台而已,Unix/Linux 平台换行符是 "\n"。
为保持平台的通用性,最好用
Environment.NewLine。