(C#)RichTextBox控件
RichTextBox(有格式文本)控件可实现TextBox控件的所有功能。
❶在RichTextBox控件中显示滚动条
RichTextBox可设置Multiline属性来控制是否显示滚动套,true为是,false为否。,默认为true。(此项属性在TextBox亦可实现)
滚动条分为两种:水平(Horizontal)滚动条和垂直(Vertical)滚动条,通过RichTextBox的ScrollBars属性设置如何显示滚动条。(此项属性在TextBox亦可实现)
ScrollBars属性值:一、Both:只有当文本超过RichTextBox的宽度或长度时,才显示水平滚动条或垂直滚动条,或两个滚动条都显示。
二、None:从不显示任何类型的滚动条。
三、Horizontal:只有当文本超过RichTextBox的宽度时,才显示水平滚动条。必须将WordWrap属性设置为false,才会出现这种情况。(下面将会给出解释)
四、Vertical:只有档文本超过RichTextBox的高度时,才显示垂直滚动条。
五、ForcedHorizontal:当WordWrap属性设置为false时,显示水平滚动条。在文本未超过RichTextBox的宽度时,该滚动条显示为浅灰色。(见图1) (图1)
(图2)
(图3)
六、ForcedVertical:始终显示垂直滚动条。在文本未超过RichTextBox的长度时,该滚动条显示为浅灰色。(见图2)
七、ForcedBoth:始终显示垂直滚动条。当WordWrap属性设置为false时,显示水平滚动条。在文本未超过RichTextBox的宽度或长度时,两个滚动条均显示为灰色。(见图3)
注:RichTextBox的WordWrap属性:用于指示多行文本框控件在必要时是否换行到下一行的开始。当属性为true时,不论ScrollBars属性值是什么,都不会显示水平滚动条。
下面通过几个截图加以描述其区别。(此项属性TextBox亦可实现)
一、当WordWrap为true,ScrollBars为Both时:(见组图4)
(组图4)
由此可见,WordWrap为true时,一旦文本超过RichTextBox的宽度时,就会自动换行到下一行,自然不需要用到水平滚动条,也就不显示出来了。
二、当WordWrap为false,ScrollBars为Both时:(见组图5)
(组图5)
由此可知,WordWrap为false时,即使文本超过RichTextBox的宽度,也不会自动换行到下一行,只有用户输入回车时才会换行,并且当文本超过RichTextBox的宽度后,才会显示水平滚动条。
代码实现过程:
private void Form1_Load(object sender, EventArgs e) //窗体的Load事件
{
richTextBox1.Multiline = true ; //将Multiline属性设置为true,实现显示多行
richTextBox1.ScrollBars = RichTextBoxScrollBars.Vertical; //设置ScrollBars属性实现只显示垂直滚动
}
❷在RichTextBox控件中设置字体属性
可通过RichTextBox的Font属性和ForeColor属性设置(Visual Studio2013社区版找不到SelectionFont和SelectionColor属性),也可通过代码实现,如文本字体设置为楷体,字体大小为12,字样是粗体,文本颜色为红色:
代码实现过程:
private void Form1_Load(object sender, EventArgs e) //窗体的Load事件
{
richTextBox1.Multiline = true ; //将Multiline属性设为true,实现显示多行
richTextBox1.ScrollBars = RichTextBoxScrollBars.Vertical; //设置ScrollBars属性实现只显示垂直滚动条
richTextBox1.SelectionFont = new Font ("楷体", 12, FontStyle.Bold); //设置SelectionFont属性实现控件中的文本为楷体,大小为12,字样是粗体
richTextBox1.SelectionColor = System.Drawing.Color.Red; //设置SelectionColor属性实现控件中的文本颜色为红色
}
❸将RichTextBox控件显示为超链接样式
将以“http://”开头的Web链接地址作为超链接文本时,运行时RichTextBox超链接文本会自动变成蓝色字体且有下划线。(见图6)
(图6)此时点击超链接文本不会有任何响应,需要在RichTextBox的LinkClicked事件中编写代码实现。
代码实现过程:
private void Form1_Load(object sender, EventArgs e) //窗体的Load事件
{
richTextBox1.Multiline = true ; //将Multiline属性设为true,实现显示多行
richTextBox1.ScrollBars = RichTextBoxScrollBars.Vertical; //设置ScrollBars属性实现只显示垂直滚动条
richTextBox1.Text = "http://www.baidu.com百度一下你就知道"; //设置Text属性
}
private void richTextBox1_LinkClicked(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(e.LinkText); //在控件LinkClicked事件中编写如下代码实现内容中的网址单击后可以访问网址
}
❹在RichTextBox控件中设置段落格式
可通过设置SelectionBullet属性将选定的段落设置为项目符号列表的格式,也可以使用SelectionIndent属性和SelectionHangingIndent属性设置段落相对于控件的左右边缘进行缩进。下面用代码将控件的SelectionBullet属性设置为true,使控件中的内容以项目符号列表的格式排列。
代码实现过程:
private void Form1_Load(object sender, EventArgs e)
{
richTextBox1.Multiline = true ;
richTextBox1.ScrollBars = RichTextBoxScrollBars.Vertical ;
richTextBox1.SelectionBullet = true ;
}
以下为属性SelectionBullet设为false和true时的差异(前者为false后者为true):(见组图7)
(组图7)
通过SelectionIndent属性设置一个整数,该整数表示控件的左边缘和文本的左边缘之间的距离(以像素为单位)。通过SelectionRightIndent属性设置一个整数,该整数表示控件的右边缘与文本的右边缘之间的距离(以像素为单位)。
以下通过代码实现SelectionIndent属性设置。
代码实现过程:
private void Form1_Load(object sender, EventArgs e)
{
richTextBox1.Multiline = true ;
richTextBox1.ScrollBars = RichTextBoxScrollBars.Vertical ;
richTextBox1.SelectionIndent = 50 ;
}
差异如下组图:
SelectionRightIndent属性与SelectionIndent属性类似,可类比,当然也可以同时使用。
(C#)RichTextBox控件的更多相关文章
- NET RichTextBox控件如何可以插入图像
本文介绍.NET RichTextBox控件如何可以插入图像,控制和ActiveX对象通过使用OLE方式,如在解释,.不幸的是,它涵盖了只用一个C源代码样本,所以我需要在托管代码(C#)实施类似的解决 ...
- RichTextBox控件-主要用于输入输出编辑文本信息
1.在RichTextBox控件中添加超链接文字 private void btn_Add_Click(object sender, EventArgs e) { rtbox_HyperLink.Ap ...
- 在RichTextBox控件中插入图片
. 在RichTextBox控件中插入图片 关键点 . 实现过程 . public void ShowInsertImageDlg() { OpenFileDialog OpenFileD ...
- 在RichTextBox控件中添加图片和文字
public void SetText(RichTextBox rtb) { rtb.Text = "在RichTextBox控件中添加图片和文字" + Environment.N ...
- RichTextBox控件日常使用集合
1.RichTextBox控件自动滚动到底部 richTextBox1.ScrollToCaret(); //将控件的内容滚动到当前光标位置
- C#超简单方法实现两个richtextbox控件滚动条同步滚动
此文章属于作者原创,转载请注明,谢谢 有时候我们需要实现对照文章等,往往将文本放到两个richtextbox控件中,但是,如果我们需要同步滚动查看,来达到更好的观看效果. 当然,传统的方法重载控件或者 ...
- HOW TO:使用 Visual C# .NET 打印 RichTextBox 控件的内容
概要 本分步指南介绍了如何打印 RichTextBox 控件的内容.RichTextBox 控件没有提供任何打印 RichTextBox 内容的方法.您可以扩展 RichTextBox 类以使用 EM ...
- RichTextBox控件
RichTextBox控件允许用户输入和编辑文本的同时提供了比普通的TextBox控件更高级的格式特征 //color在c#中是个枚举enum 蓝色按钮:在蓝色按钮注册click事件后,richtex ...
- C#如何打印RichTextBox控件的内容
本任务的内容 摘要 创建 RichTextBoxPrintCtrl 控件 测试控件 参考 概要 本分步指南介绍了如何打印 RichTextBox 控件的内容.RichTextBox 控件没有提供任 ...
随机推荐
- 用httpPost对JSON发送和接收的例子
HTTPPost发送JSON: private static final String APPLICATION_JSON = "application/json"; ...
- 学了C语言,如何写个程序计算出每个月的第一个星期一对应的日期
在前面,我们分别利用泰勒公式和C标准库中的mktime()函数推算了某个特定日期所对应的星期几,刚做完这些,就又遇到了一个与日期相关的新任务: 老板把每个月例会的时间定在了每个月的第一个星期一,他让我 ...
- schtasks确实可以绕过UAC,简直不可思议啊~~
https://msdn.microsoft.com/en-us/library/windows/desktop/bb736357(v=vs.85).aspx
- CentOS6.x 64位下mysql5.5.25安装图解教程
查看当前安装的linux版本 命令:lsb_release -a 如下图所示 通过上图中的数据可以看出安装的版本为CentOS release 6.3,所以我们需要下载CentOS release 6 ...
- SQL SERVER ->> CXPacket等待类型
最近做了一个项目,把整个数据仓库平台下所有的表和索引都改成页级别的数据压缩.昨天发现测试环境下的某个workload跑得比平时慢.最后我们定位了到这个workload做的事情中可能造成性能下降的地方, ...
- 下载的时候如果文件名是中文就变成zip.zip
struts2 /WEB-INF/web.xml <?xml version="1.0" encoding="UTF-8"?> <web-ap ...
- Hadoop HDFS文件常用操作及注意事项
Hadoop HDFS文件常用操作及注意事项 1.Copy a file from the local file system to HDFS The srcFile variable needs t ...
- hive0.13网络接口安装
安装好hive 0.13以后,在./lib下找不到hive-hwi-0.13.1.war ,那该怎么办? 1.下载hive-0.12.0版本,把这一版里面的hive-hwi-0.12.0.war重 ...
- HDU 4662 MU Puzzle 简单找规律
没有任何变换(III变U和删UU操作)之前,I 的个数一定是2^x个(也就是2的整数次幂) 若仅考虑III变U,那么设U的个数为k,I 的个数变为2^x-3*k 再加上删除UU操作,假设我们删除了2* ...
- poj2265
斜坐标系,注意找规律.说明在代码里. e- ?(x):-(x))<eps) ][] = { { , }, { -, }, { -, }, { , - }, { , - }, { , } ...