C# 中 TextBox 换行

要让一个Windows Form的TextBox显示多行文本就得把它的Multiline属性设置为true。

这个大家都知道,可是当你要在代码中为Text属性设置多行文本的时候可能会遇到点麻烦:)

你往往会想到直接付给一个含有换行符"\n"的字符串给Text属性:

aTextBox.Text = "First Line\nSecond Line\nThird Line";

可是实际运行的时候你却发现它始终不会换行,显示的结果为"First LineSecond LineThirdLine"。

其实主要是因为TextBox运行在Windows上。Windows能够显示的换行必须由两个字符组成:carriage return & line feed,也就是必须是"\r\n"。如果只是"\n"在Windows中不能显示为换行的,这与Linux/Unix等其他的操作系统不一样。所以上边如果把"\n"替换成"\r\n"就可以了。

其实问题仍然没有很好的解决,因为用"\r\n"能够满足Windows的要求了,但是如果是其他平台怎么办?为了要确保让换行效果在各种平台上都能够正常的显示,请用Environment.NewLine。它可以确保在不同的平台下都能够返回正确的换行字符,在Windows下是\r\n,在Linux(Mono)下就应该是\n了。所以上面的代码应该写成:

aTextBox.Text = "First Line" +

     Environment.NewLine + "Second Line" +

     Environment.NewLine + "Third Line";

另外你也可以用verbatim string literal(用@开始的字符串)的形式来输入换行符:

aTextBox.Text = @"First Line

Second Line

Third Line";

这种形式在代码中看起来很直观,但是如果代码编辑器是在Windows下运行的,仍然相当于输入了\r\n。

转载于:https://www.cnblogs.com/fjatns/archive/2011/12/03/2274456.html

C# 中 TextBox 换行的方法相关推荐

  1. html script 换行,JavaScript中实现换行的方法

    JavaScript中实现换行的方法 发布时间:2021-03-15 10:55:53 来源:亿速云 阅读:122 作者:小新 小编给大家分享一下JavaScript中实现换行的方法,希望大家阅读完这 ...

  2. Winform 中 TextBox 换行问题解析(转)

    winform 中 TextBox 的 Multiline属性设置为 true ,敲入几个字符和几个回车,然后保存到数据库,再从数据库中读取出来赋值给TextBox,换行符丢失.以前遇到这问题,没太在 ...

  3. C# 中 TextBox 换行

    要让一个Windows Form的TextBox显示多行文本就得把它的Multiline属性设置为true. 这个大家都知道,可是当你要在代码中为Text属性设置多行文本的时候可能会遇到点麻烦:) 你 ...

  4. JS实现alert中显示换行的方法

    //浏览器类型判定 function getOs() {if(navigator.userAgent.indexOf("MSIE")>0) {return "IE& ...

  5. php向文件中写一行 换行,如何实现php向文件中写入换行

    如何实现php向文件中写入换行 发布时间:2020-07-14 14:16:12 来源:亿速云 阅读:86 作者:Leah 这篇文章运用简单易懂的例子给大家介绍如何实现php向文件中写入换行,代码非常 ...

  6. chatgpt赋能python:如何在Python中取消换行?

    如何在Python中取消换行? 如果你是一名经验丰富的Python工程师,你一定会遇到在输出过程中需要取消换行的情况.在本文中,我将告诉你如何使用Python取消换行. 什么是换行? 在计算机编程中, ...

  7. c#中关于textbox换行

    要让一个Windows Form的TextBox显示多行文本就得把它的Multiline属性设置为true. 这个大家都知道,可是当你要在代码中为Text属性设置多行文本[的时候可能会遇到点麻烦:) ...

  8. C#中textbox输出换行

    很多人在C#.NET平台编程时遇到一个问题,就是在textbox中原本应该换行的文本,保存到文件中却没有换行. 例如: textbox中文本为: 12 34 56 而保存到文件中却是: 123456 ...

  9. c# textbox换行问题以及使用\r\n不换行解决方法

    vs2010 windows下c# winform编程,众所周知,\r\n是windows下的换行符号,\n是linux下的换行符号.然而,有可能由于习惯,出现使用了\r\n仍然无法换行的问题. 请看 ...

最新文章

  1. 网工学Python——初识面向对象
  2. 96. Unique Binary Search Trees1和2
  3. python调用shell脚本
  4. 3. OD-爆破有钥匙的exe(有验证文件,如KeyFile.dat)
  5. HashMap、ConcurretnHashMap面试题详解,源码分析
  6. java 拦截器 排除_java – Spring MVC Interceptor排除HTTP方法的路径
  7. 最新:斐讯K3千兆无线路由器刷官改版固件的详细图文教程
  8. TB6612驱动和MG513P3012V电机
  9. 数据地图在商业数据分析中的5种应用
  10. 不撞南墙不回头-深度优先搜索算法
  11. ava.lang.IllegalStateException: Failed to introspect Class [xxxxxxxxImpl] from ClassLoader-Autowired
  12. Maven 自问自答
  13. wow登录服务器未响应,魔兽世界进不去 战网无法登陆和未响应怎么办
  14. Zephyr 3.2 弃用devicetree 中node 里的label property
  15. Ubuntu系统中查看电脑驱动信息
  16. 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(10):向量组及其线性组合
  17. 技能终将过时,而能力与时俱进
  18. Juce源码分析(一)Juce的优势
  19. Foxmail 账号无法登陆、无法收取邮件等问题
  20. 【MPLS】LDP保留的标签

热门文章

  1. “核心期刊”严重污染了学术界
  2. 找房网项目(微服务)
  3. 三态门有一个信号控制端en_三态门有哪三态_三态门有什么特点
  4. 无字天书之Python第四页(变量基础)
  5. Hexo攻略-更换网页图标
  6. 大咖云集,AI人才成长论坛圆满落幕!
  7. 金万维快解析远程服务,助力企业客户维护
  8. ORA-00600: 内部错误代码
  9. maxthon 2 ua
  10. prototype 与 _proto_ 的区别