RichTextBox控件-主要用于输入输出编辑文本信息
1、在RichTextBox控件中添加超链接文字
private void btn_Add_Click(object sender, EventArgs e) { rtbox_HyperLink.AppendText(//向控件中添加文本信息 @"明日科技:http://www.mingrisoft.com/ 谷歌:http://www.google.cn/ 网易:http://www.163.com/ 百度:http://www.baidu.com/ CSDN:http://www.csdn.net/ 腾讯:http://www.qq.com/ QQ书签:http://shuqian.qq.com/ QQ空间:http://qzone.qq.com/ 校内网:http://www.xiaonei.com/"); } private void rtbox_HyperLink_LinkClicked(object sender, LinkClickedEventArgs e) { System.Diagnostics.Process.Start(//使用IE打开指定网址 "iexplore.exe", e.LinkText);//启用另一个线程 }
2、在RichTextBox控件中插入图片
private void btn_InsertImage_Click(object sender, EventArgs e) { OpenFileDialog P_OpenFileDialog = //创建打开文件对话框对象 new OpenFileDialog(); P_OpenFileDialog.Filter = "*.jpg|*.jpg|*.bmp|*.bmp"; DialogResult P_DialogResult = //弹出打开文件对话框 P_OpenFileDialog.ShowDialog(); if (P_DialogResult==DialogResult.OK)//判断是否选中文件 { Clipboard.SetDataObject(//将图像放入剪切板 Image.FromFile(P_OpenFileDialog.FileName), false); if (rtbox_Display.CanPaste(//判断剪切板内是否是图像 DataFormats.GetFormat(DataFormats.Bitmap))) { rtbox_Display.Paste();//粘贴剪切板的内容到控件中 } } }
3、在RichTextBox控件中显示RTF格式的文件
public partial class Form1 : Form { public Form1() { InitializeComponent(); } private static string fileName = ""; //该变量用来保存文件的内容 private OpenFileDialog G_OpenFileDialog = //定义打开文件对话框字段并赋值 new OpenFileDialog(); private SaveFileDialog G_SaveFileDialog = //定义保存文件对话框字段并赋值 new SaveFileDialog(); private void 打开ToolStripMenuItem_Click(object sender, EventArgs e) { ((ToolStripMenuItem)Menu_Main.Items["文件ToolStripMenuItem"]).//停用保存功能 DropDownItems["保存ToolStripMenuItem"].Enabled = false; G_OpenFileDialog.Filter = "RTF文件(*.RTF)|*.RTF";//设置打开文件的过滤参数 //当打开的文件内容不为空且点击“打开”按钮时
if (G_OpenFileDialog.ShowDialog() == DialogResult.OK && G_OpenFileDialog.FileName.Length > 0)
{ fileName = G_OpenFileDialog.FileName;//保存打开文件的文件名 this.richTextBox1.LoadFile(fileName, RichTextBoxStreamType.RichText);//从指定位置加载RTF文件 } } private void 清空ToolStripMenuItem1_Click(object sender, EventArgs e) { richTextBox1.Clear();//清空RichTextBox控件中的内容 richTextBox1.Focus();//时RichTextBox控件获得焦点 } private void 保存ToolStripMenuItem_Click(object sender, EventArgs e) { if (File.Exists(fileName))//如果存在该文件 { richTextBox1.SaveFile(fileName, RichTextBoxStreamType.RichNoOleObjs);//在指定路径下保存 MessageBox.Show("保存成功!", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);//弹出保存成功的提示信息 richTextBox1.Clear();//清空RichTextBox控件中的内容 } else//当不存在该文件时 { G_SaveFileDialog.Filter = "RTF文件(*.RTF)|*.RTF";//设置保存文件的保存格式 //当保存文件的文件名存在且点击的是“保存”按钮时
if (G_SaveFileDialog.ShowDialog() == DialogResult.OK && G_SaveFileDialog.FileName.Length > 0) { richTextBox1.SaveFile(G_SaveFileDialog.FileName + ".RTF");//在指定位置下保存RTF文件 } } } private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) { Application.Exit();//退出应用程序 } private void richTextBox1_TextChanged(object sender, EventArgs e) { if (richTextBox1.Text != "")//当RichTextBox控件中存在内容时 { ((ToolStripMenuItem)Menu_Main.Items["文件ToolStripMenuItem"]).//启用保存功能 DropDownItems["保存ToolStripMenuItem"].Enabled = true; } else//当RichTextBox控件中不存在内容时 { ((ToolStripMenuItem)Menu_Main.Items["文件ToolStripMenuItem"]).//停用保存功能 DropDownItems["保存ToolStripMenuItem"].Enabled = false; } } }
4、使用RichTextBox控件保存文件
public partial class Frm_Main : Form { public Frm_Main() { InitializeComponent(); } private OpenFileDialog G_OpenFileDialog = //声明打开文件对话框字段并赋值 new OpenFileDialog(); private SaveFileDialog G_SaveFileDialog = //声明保存文件对话框字段并赋值 new SaveFileDialog(); private void btn_Open_Click(object sender, EventArgs e) { } private void btn_Save_Click(object sender, EventArgs e) { } private void 打开RTFToolStripMenuItem_Click(object sender, EventArgs e) { G_OpenFileDialog.Filter = "text.rtf|*.rtf*";//筛选文件信息 if (this.G_OpenFileDialog.ShowDialog() == DialogResult.OK)//判断是否打开文件 { rtbox_Display.LoadFile(//载入rtf文件 G_OpenFileDialog.FileName, RichTextBoxStreamType.RichText); } } private void 保存成TXT文件ToolStripMenuItem_Click(object sender, EventArgs e) { if (rtbox_Display.Text != "")//判断控件中是否有文本内容 { G_SaveFileDialog.DefaultExt = "*.txt";//设置文件默认扩展名 G_SaveFileDialog.Filter = "Txt Files|*.txt";//筛选文件信息 if (this.G_SaveFileDialog.ShowDialog() == DialogResult.OK)//判断是否确认保存文件 { rtbox_Display.SaveFile(//保存文件 this.G_SaveFileDialog.FileName, RichTextBoxStreamType.PlainText); MessageBox.Show("保存成功", "信息提示",//弹出消息对话框 MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { MessageBox.Show("请打开文件", "信息提示", //弹出消息对话框 MessageBoxButtons.OK, MessageBoxIcon.Information); } } private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) { Application.Exit(); } }
5、控制文本对齐方式
private void justifyCenter_Click(object sender,EventArgs e) { this.richTextBox1.SelectionAlignment = HorizontalAlignment.Center;//设置选定的文本为居中对齐 } private void justifyLeft_Click(object sender,EventArgs e) { this.richTextBox1.SelectionAlignment = HorizontalAlignment.Left;//设置选定的文本为左对齐 } private void justifyRight_Click(object sender,EventArgs e) { this.richTextBox1.SelectionAlignment = HorizontalAlignment.Right;//设置选定的文本为右对齐 }
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 2025成都.NET开发者Connect圆满结束
· 后端思维之高并发处理方案
· 在 VS Code 中,一键安装 MCP Server!
· 千万级大表的优化技巧
· 用一种新的分类方法梳理设计模式的脉络