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;//设置选定的文本为右对齐
        }
原文地址:https://www.cnblogs.com/chenyongblog/p/3236023.html