frmFind.cs
上传用户:jsz11269
上传日期:2017-01-14
资源大小:450k
文件大小:3k
源码类别:

Email服务器

开发平台:

C#

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. namespace myWorkPad
  9. {
  10.     public partial class frmFind : Form
  11.     {
  12.         // local member variable to hold main form
  13.         MainForm mMain;
  14.         
  15.         // default constructor
  16.         public frmFind()
  17.         {
  18.             InitializeComponent();
  19.         }
  20.         // overloaded constructor - permits passing in main form
  21.         public frmFind(MainForm f)
  22.         {
  23.             InitializeComponent();
  24.             mMain = f;
  25.         }
  26.         private void btnFind_Click(object sender, System.EventArgs e)
  27.         {
  28.             try
  29.             {
  30.                 int StartPosition;
  31.                 StringComparison SearchType;
  32.                 if (chkMatchCase.Checked == true)
  33.                 {
  34.                     SearchType = StringComparison.Ordinal;
  35.                 }
  36.                 else
  37.                 {
  38.                     SearchType = StringComparison.OrdinalIgnoreCase;
  39.                 }
  40.                 StartPosition = mMain.rtMain.Text.IndexOf(txtSearchTerm.Text, SearchType);
  41.                 if (StartPosition == 0)
  42.                 {
  43.                     MessageBox.Show("String: " + txtSearchTerm.Text.ToString() + " not found", "No Matches", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
  44.                     return;
  45.                 }
  46.                 mMain.rtMain.Select(StartPosition, txtSearchTerm.Text.Length);
  47.                 mMain.rtMain.ScrollToCaret();
  48.                 //mMain.Focus();
  49.                 btnFindNext.Enabled = true;
  50.             }
  51.             catch (Exception ex)
  52.             {
  53.                 MessageBox.Show(ex.Message.ToString(), "Error");
  54.             }
  55.         }
  56.         
  57.         
  58.         private void btnFindNext_Click(object sender, System.EventArgs e)
  59.         {
  60.             try
  61.             {
  62.                 int StartPosition = mMain.rtMain.SelectionStart + 2;
  63.                 StringComparison SearchType;
  64.                 if (chkMatchCase.Checked == true)
  65.                 {
  66.                     SearchType = StringComparison.Ordinal;
  67.                 }
  68.                 else
  69.                 {
  70.                     SearchType = StringComparison.OrdinalIgnoreCase;
  71.                 }
  72.                 //StartPosition = Microsoft.VisualBasic.Strings.InStr(StartPosition, mMain.rtMain.Text, txtSearchTerm.Text, SearchType);
  73.                 StartPosition = mMain.rtMain.Text.IndexOf(txtSearchTerm.Text, StartPosition, SearchType);
  74.                 if (StartPosition == 0 || StartPosition < 0)
  75.                 {
  76.                     MessageBox.Show("String: " + txtSearchTerm.Text.ToString() + " not found", "No Matches", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
  77.                     return;
  78.                 }
  79.                 mMain.rtMain.Select(StartPosition, txtSearchTerm.Text.Length);
  80.                 mMain.rtMain.ScrollToCaret();
  81.                 //mMain.Focus();
  82.             }
  83.             catch (Exception ex)
  84.             {
  85.                 MessageBox.Show(ex.Message.ToString(), "Error");
  86.             }
  87.         }
  88.         private void txtSearchTerm_TextChanged(object sender, EventArgs e)
  89.         {
  90.             btnFindNext.Enabled = false;
  91.         }
  92.     }
  93. }