RickTextBox控件基础用法
2016-01-21 16:14
489 查看
.NET Framework内置了两个基本的控件用来提取用户输入的文本:TextBox和RickTextBox。这两个控件都派生于基类TextBoxBase,而TextBoxBase派生于Control类。
TextBox控件常用于从用户获取简短的文本字符串,而RichTextBox用于显示和输入格式化的文本(例如,黑体、下划线和斜体)。RickTextBox控件使用标准的格式化文本,称为Rich
Text Format(富文本格式)或RTF。
<span style="font-size:12px;"> private void ButtonBold_Click(object sender, EventArgs e)
{
Font oldFont;
Font newFont;
//获得当前文本的字体
oldFont = RichTextBox.SelectionFont;
if (oldFont.Bold)
{
//以oldFont为原型,创建新字体,取消了粗体格式
newFont = new Font(oldFont, oldFont.Style & ~FontStyle.Bold);
}
else
{
//以oldFont为原型,创建新字体,添加了粗体格式
newFont = new Font(oldFont, oldFont.Style | FontStyle.Bold);
}
//新字体赋给文本
RichTextBox.SelectionFont = newFont;
//焦点返回给RichTextBox
RichTextBox.Focus();
}</span>在RichTextBox控件中选择文本后,点击“Bold”后,结果如下图所示:
选中文本,点击“Center”按钮后,运行结果如下所示:
这里之所以试图获得当前的“FontFamily”而不是“Font”,主要是因为和字号相关的构造函数“public Font(FontFamily family, float emSize);”的第一个参数是FontFamily类型,它表示字体所属的字体系列。
其运行结果如下所示:
用word打开生成的“Text.rtf”文件,其结果如下图所示:
.NET Framework内置了两个基本的控件用来提取用户输入的文本:TextBox和RickTextBox。这两个控件都派生于基类TextBoxBase,而TextBoxBase派生于Control类。
TextBox控件常用于从用户获取简短的文本字符串,而RichTextBox用于显示和输入格式化的文本(例如,黑体、下划线和斜体)。RickTextBox控件使用标准的格式化文本,称为Rich
Text Format(富文本格式)或RTF。
示例
新建一个C#窗体程序,界面如下所示,该示例可以修改RickTextBox控件中选中文本的字体、字号和对齐方式,同时可以将文本保存为rtf文件。Bold按钮
下面的示例代码是对于RichTextBox控件中选中的文本进行加粗或者取消加粗。修改文本字体需要用到RichTextBox控件的SelectionFont属性。<span style="font-size:12px;"> private void ButtonBold_Click(object sender, EventArgs e)
{
Font oldFont;
Font newFont;
//获得当前文本的字体
oldFont = RichTextBox.SelectionFont;
if (oldFont.Bold)
{
//以oldFont为原型,创建新字体,取消了粗体格式
newFont = new Font(oldFont, oldFont.Style & ~FontStyle.Bold);
}
else
{
//以oldFont为原型,创建新字体,添加了粗体格式
newFont = new Font(oldFont, oldFont.Style | FontStyle.Bold);
}
//新字体赋给文本
RichTextBox.SelectionFont = newFont;
//焦点返回给RichTextBox
RichTextBox.Focus();
}</span>在RichTextBox控件中选择文本后,点击“Bold”后,结果如下图所示:
对齐方式
也可以修改对齐方式,代码如下。修改对齐方式,必须检查RichTextBox控件的SelectionAlignment属性,HorizontalAlignment是一个枚举,其值有Left、Right、Center、Justify和NotSet。下面的示例代码只是检查文本是否居中,如果居中就把对齐方式修改为左对齐,如果不是就修改为居中。private void ButtonCenter_Click(object sender, EventArgs e) { if (RichTextBox.SelectionAlignment == HorizontalAlignment.Center) { RichTextBox.SelectionAlignment = HorizontalAlignment.Left; } else { RichTextBox.SelectionAlignment = HorizontalAlignment.Center; } //焦点返回给RichTextBox RichTextBox.Focus(); }
选中文本,点击“Center”按钮后,运行结果如下所示:
SizeUp字体增大
可以修改控件的字号。示例代码如下所示,当点击“SizeUp”按钮时,字体字号增大。SelectionFont.Size可以获得当前文本的字体大小,注意是float类型,包括用“public Font(FontFamily family, float emSize);”构造函数创建新字体时,字号也是float类型。这里之所以试图获得当前的“FontFamily”而不是“Font”,主要是因为和字号相关的构造函数“public Font(FontFamily family, float emSize);”的第一个参数是FontFamily类型,它表示字体所属的字体系列。
private void ButtonSizeUp_Click(object sender, EventArgs e) { FontFamily currentFontFamily; Font newFont; //获得当前字体所属的字体系列 currentFontFamily = RichTextBox.SelectionFont.FontFamily; //获得当前字体的大小 float oldFontSize = RichTextBox.SelectionFont.Size; //设置新的字体大小 float newFontSize = Convert.ToSingle(oldFontSize + 2.0); //创建新字体 newFont = new Font(currentFontFamily, newFontSize); RichTextBox.SelectionFont = newFont; RichTextBox.Focus(); }
其运行结果如下所示:
Save保存
将窗体文本保存成rtf文件,其代码如下。由于我们处理的是文件,所以有可能会遇到异常,必须处理这些异常。private void ButtonSave_Click(object sender, EventArgs e) { try { RichTextBox.SaveFile("Text.rtf"); } catch (System.Exception err) { MessageBox.Show(err.Message); } } }
用word打开生成的“Text.rtf”文件,其结果如下图所示:
相关文章推荐
- c#调用COM组件
- flash 系统字体显示问题
- IE:临时文件保存法
- C#实现把指定数据写入串口
- C#动态创建button的方法
- C#中抽象方法与虚拟方法的区别
- c#中虚函数的相关使用方法
- C#使用加边法计算行列式的值
- C#实现多线程的同步方法实例分析
- C#中尾递归的使用、优化及编译器优化
- C#实现子窗体与父窗体通信方法实例总结
- C#通用邮件发送类分享
- C#中this的用法集锦
- C#数据结构之顺序表(SeqList)实例详解
- C#.NET获取拨号连接的宽带连接方法
- C#异步绑定数据实现方法
- C#实现AddRange为数组添加多个元素的方法
- C#中Equality和Identity浅析
- C#比较二个数组并找出相同或不同元素的方法
- C#生成饼形图及添加文字说明实例代码