C# richTextBox 控件使用说明

原创 2013年12月03日 17:44:57


查找richTextBox 字符串:

 该方法是可以实现查询字符串,但多个就不成功了
string s="";
int index = this.richTextBox1.Find(s);
if (index < 0)
{
    MessageBox.Show("查找不到");
    return;
}
this.richTextBox1.SelectionStart = index;
this.richTextBox1.SelectionLength = s.Length;
this.richTextBox1.Focus();


查找richTextBox 支持上下 首尾查询

定义类

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using System.Drawing;

namespace vjsdn_tester
{
   //操作RichTextBox控件的类. by www.csframework.com 
   public class RichTextBoxTool
   {
      /// <summary> 
      /// 自己定义查找方法.参数content是要查询的内容. 
      /// type是查询条件.如:从文件头部向下查询,从文件尾部向上查询. 
      /// 如type= RichTextBoxFinds.None 表示从文件头部向下查询. 
      /// </summary> 
      public static void FindText(RichTextBox rich, string content, RichTextBoxFinds options)
      {
         int startIndex;
         int endIndex;
         
         if ((options & RichTextBoxFinds.Reverse) == RichTextBoxFinds.Reverse)
         {
            startIndex = 0;
            endIndex = rich.SelectionStart;
         }
         else
         {
            startIndex = rich.SelectionStart + rich.SelectionLength;
            endIndex = rich.Text.Length;
         }
         
         int index = rich.Find(content, startIndex, endIndex, options);
         
         if (index >= 0) //如果找到
         ShowSelection(rich, index, content.Length);
         else
         MessageBox.Show("Not found!");
      }
      
      //查找第一个 
      public static void FindFirst(RichTextBox rich, string content)
      {
         int index = rich.Find(content, 0);
         if (index >= 0) ShowSelection(rich, index, content.Length);
      }
      
      //查找最后一个 
      public static void FindLast(RichTextBox rich, string content)
      {
         int index = rich.Find(content, rich.Text.Length, RichTextBoxFinds.Reverse);
         if (index >= 0) ShowSelection(rich, index, content.Length);
      }
      
      //选择搜索到的文本 
      private static void ShowSelection(RichTextBox rich, int index, int length)
      {
         rich.SelectionStart = index;
         rich.SelectionLength = length;
         rich.SelectionColor = Color.Red;
         rich.Focus();
      }
      
   }
}

执行代码


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace vjsdn_tester
{
   public partial class frmRichboxSearher : Form
   {
      public frmRichboxSearher()
      {
         InitializeComponent();
      }
      
      //查找下一个单词
      private void btnFindNext_Click(object sender, EventArgs e)
      {
         string content = txtContent.Text;
         RichTextBoxTool.FindText(this.richTextBox1, content, RichTextBoxFinds.None);
      }
      
      //查找第一个单词
      private void btnFindFirst_Click(object sender, EventArgs e)
      {
         string content = txtContent.Text;
         RichTextBoxTool.FindFirst(this.richTextBox1, content);
      }
      
      //查找上一个单词
      private void btnFindPrior_Click(object sender, EventArgs e)
      {
         string content = txtContent.Text;
         RichTextBoxTool.FindText(this.richTextBox1, content, RichTextBoxFinds.Reverse);
      }
      
      //查找最后一个单词
      private void btnFindLast_Click(object sender, EventArgs e)
      {
         string content = txtContent.Text;
         RichTextBoxTool.FindLast(this.richTextBox1, content);
      }
   }
}


相关文章推荐

Visual Studio 2010——C#的ContexMenuStrip和RichTextBox控件的使用

实验环境:Windows XP,Visual Studio 2010  Ultimate 1 创建项目     文件>>新建>>项目,选中“Windows窗体应用程序”,如下图所示: ...

HOW TO:使用 Visual C# .NET 打印 RichTextBox 控件的内容

概要本分步指南介绍了如何打印 RichTextBox 控件的内容。RichTextBox 控件没有提供任何打印 RichTextBox 内容的方法。您可以扩展 RichTextBox 类以使用 EM_...

C#为RichTextBox控件添加行号

写过程序的人应该不会对RichTextBox感到陌生,与TextBox相比,它封装了更丰富的对象,使你的程序使用起来更加方便。但是它也有美中不足的地方。比如说没有行号,滚动条滚动进度无法控制等一系列的...

.Net (C#) RichTextBox控件实现上下查找

最近自己写了一个仿Windows的记事本程序,上下查找部分的功能不好实现,所以后面自己编写了一个查找函数。。。。。。       //向下查找        public void down(Rich...

C#中RichTextBox 控件介绍

原文地址:http://www.dingos.cn/index.php?topic=948.0【RichTextBox控件介绍】Windows 窗体 RichTextBox 控件用于显示、输入和操作格...

C#换肤实例代码和控件使用说明

  • 2009年08月03日 19:04
  • 6.58MB
  • 下载

WEB打印控件Lodop(V6.x)使用说明及样例

WEB打印控件Lodop(V6.x)使用说明及样例   Lodop是专业WEB控件,用它既可裁剪输出页面内容,又可用程序代码生成复杂打印页。 控件功能强大,却简单易用,所有调用...
  • flyyhz
  • flyyhz
  • 2016年11月07日 14:42
  • 1775
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# richTextBox 控件使用说明
举报原因:
原因补充:

(最多只允许输入30个字)