首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > VB.NET > [新手点滴] 关于Multilined TextBox的多行文本设置的一个小问题。
【标  题】:[新手点滴] 关于Multilined TextBox的多行文本设置的一个小问题。
【关键字】:Multilined,TextBox
【来  源】:http://www.cnblogs.com/Laser_Lu/archive/2005/04/18/139663.html

[新手点滴] 关于Multilined 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。

Environment是一个静态类,位于System名称空间下,提供对当前程序的运行环境和平台的相关信息的访问。它提供了很多有用的静态属性和方法:
具体的可以参考MSDN: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemenvironmentmemberstopic.asp
[Quoted] Writing High-Performance Managed Applications : A Primer:【上一篇】
.NET Undocumented!:【下一篇】
【相关文章】
  • 索要ValidateTextBox控件Source Code的朋友rickel****@gmail.com,邮件退回了。各位,与我通信,请不要使用...
  • FreeTextBox 2.0 Released , BizTalk Server 2004 Developer Competition!
  • 动态生成 rtf 并指定给 RichTextBox 控件
  • 学习RichTextBox
  • 快速获得Richtextbox控件指定行文本的方法
  • 根據datagrid模板列中的checkbox填入日期至textbox有解嗎?10/17
  • 创建具有自验证功能的textbox控件
  • 在TextBox中查找和继续查找
  • 用VB快速读取TextBox第N行的数据
  • 如何在RichTextBox中实现Undo功能
  • 【随机文章】
  • dataTable和selectBooleanCheckbox实现选择多条记录
  • 如何制作星状放射线效果?
  • 初学者学好JAVA最关键几点
  • 腾讯QQ/TM珊瑚虫外挂/珊瑚虫2005集成安装版(v3.0.4),
  • 再议回调函数
  • interceptor和ognlvaluestack
  • Visual Studio.Net 内幕(9)
  • 如何使用ajax开发web应用程序(一)
  • ISA Server客户端连接故障排除(2)
  • 通过网络完全复制UNIX系统
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.