4、记事本

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace jishibenwenjian
{
    public partial class jishiben : Form
    {
        public jishiben()
        {
            InitializeComponent();
        }
        #region//菜单栏
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            if (this.textBox1.Text.Length > 0)
            {
                撤消ToolStripMenuItem.Enabled = true;
                粘贴ToolStripMenuItem.Enabled = true;
                删除ToolStripMenuItem.Enabled = true;
                全选ToolStripMenuItem.Enabled = true;
                查找ToolStripMenuItem.Enabled = true;
                查找下一个ToolStripMenuItem.Enabled = true;
                替换ToolStripMenuItem.Enabled = true;
            }
            else
            {
                粘贴ToolStripMenuItem.Enabled = false;
                删除ToolStripMenuItem.Enabled = false;
                查找ToolStripMenuItem.Enabled = false;
                查找下一个ToolStripMenuItem.Enabled = false;
            }
        }
        #endregion
        #region
        private void textBox1_Click(object sender, EventArgs e)
        {
            if (this.textBox1.Text.Length > 0)
            {
                剪切ToolStripMenuItem.Enabled = true;
                复制ToolStripMenuItem.Enabled = true;
            }
            else
            {
                剪切ToolStripMenuItem.Enabled = false;
                复制ToolStripMenuItem.Enabled = false;
            }
        }
        #endregion
        #region//编辑
        private void 撤消ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (textBox1.CanUndo == true)
            {
                textBox1.Undo();
                //textBox1.ClearUndo();
            }
        }
        private void 剪切ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.Cut();
        }
        private void 复制ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.Copy();
        }
        private void 粘贴ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.Paste();
        }
        private void 删除ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.SelectedText = "";
        }
        private void 全选ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.SelectAll();
        }
        private void 查找ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            chazhao ff = new chazhao(this.textBox1.SelectedText, this);
            ff.Owner = this;
            ff.Show();
        }
        private void 替换ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            tihuan t = new tihuan(this.textBox1.SelectedText, this);
            t.Owner = this;
            t.Show();
        }
        #endregion
        #region//文件
        private void 打开OCtrlOToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DialogResult dr = openFileDialog1.ShowDialog();
            if (dr == DialogResult.OK)
            {
                string filename = openFileDialog1.FileName;
                StreamReader sr = new StreamReader(filename, Encoding.Default);
                this.textBox1.Text = sr.ReadToEnd();
                sr.Close();
                FileName = filename;
            }
        }
        private void 新建NCtrlNToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (this.textBox1.Text.Length > 0)
            {
                saveFileDialog1.Filter = "文本文件(*.txt)|*.txt|word文档(*.doc)|*.doc";
                DialogResult drg = MessageBox.Show("是否进行保存?", "保存对话框", MessageBoxButtons.YesNo);
                if (DialogResult.Yes == drg)
                {
                    if (FileName == null)
                    {
                        DialogResult dr = saveFileDialog1.ShowDialog();
                        if (dr == DialogResult.OK)
                        {
                            string filename = saveFileDialog1.FileName;
                            StreamWriter sw = new StreamWriter(filename);
                            sw.Write(this.textBox1.Text);
                            sw.Close();
                        }
                    }
                    else
                    {
                        StreamWriter sw = new StreamWriter(FileName);
                        sw.Write(this.textBox1.Text);
                        sw.Close();
                    }
                }
            }
            FileName = null;
            this.textBox1.Text = "";
        }
        private string FileName;
        private void 保存SCtrlSToolStripMenuItem_Click(object sender, EventArgs e)
        {
            saveFileDialog1.Filter = "文本文件(*.txt)|*.txt|word文档(*.doc)|*.doc";
            if (FileName == null)
            {
                DialogResult dr = saveFileDialog1.ShowDialog();
                if (dr == DialogResult.OK)
                {
                    string filename = saveFileDialog1.FileName;
                    StreamWriter sw = new StreamWriter(filename);
                    sw.Write(this.textBox1.Text);
                    sw.Close();
                }
            }
            else
            {
                StreamWriter sw = new StreamWriter(FileName);
                sw.Write(this.textBox1.Text);
                sw.Close();
            }
        }
        private void 另存为AToolStripMenuItem_Click(object sender, EventArgs e)
        {
            saveFileDialog1.Filter = "文本文件(*.txt)|*.txt|word文件(*.doc)|*.doc";
            DialogResult dr = saveFileDialog1.ShowDialog();
            if (dr == DialogResult.OK)
            {
                string filename = saveFileDialog1.FileName;
                StreamWriter sw = new StreamWriter(filename);
                sw.Write(this.textBox1.Text);
                sw.Close();
            }
        }
        private void 页面设置UToolStripMenuItem_Click(object sender, EventArgs e)
        {
            pageSetupDialog1.Document = printDocument1;//为页面设置对话框指定打印对象
            pageSetupDialog1.ShowDialog();//打开打印对话框
        }
        private void 打印ToolStripMenuItem_Click_1(object sender, EventArgs e)
        {
            DialogResult dr = printDialog1.ShowDialog();
            if (dr == DialogResult.OK)
            {
                printDocument1.Print();
            }
        }
        private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
        {
            //设置打印的画板内容
            System.Drawing.Font f = new System.Drawing.Font("宋体", 12);
            e.Graphics.DrawString(this.textBox1.Text, f, SystemBrushes.ActiveBorder, 10.0f, 0f);
        }
        private void 退出XToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (this.textBox1.Text.Length > 0)
            {
                saveFileDialog1.Filter = "文本文件(*.txt)|*.txt|word文档(*.doc)|*.doc";
                DialogResult drg = MessageBox.Show("是否进行保存?", "保存对话框", MessageBoxButtons.YesNo);
                if (DialogResult.Yes == drg)
                {
                    if (FileName == null)
                    {
                        DialogResult dr = saveFileDialog1.ShowDialog();
                        if (dr == DialogResult.OK)
                        {
                            string filename = saveFileDialog1.FileName;
                            StreamWriter sw = new StreamWriter(filename);
                            sw.Write(this.textBox1.Text);
                            sw.Close();
                        }
                    }
                    else
                    {
                        StreamWriter sw = new StreamWriter(FileName);
                        sw.Write(this.textBox1.Text);
                        sw.Close();
                    }
                }
            }
            FileName = null;
            this.textBox1.Text = "";
            this.Close();
        }
        #endregion
        private void jishiben_Load(object sender, EventArgs e)
        {
            skinEngine2.SkinFile = "MP10.ssk";
        }
    }
}
//替换
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace jishibenwenjian
{
    public partial class tihuan : Form
    {
        public tihuan()
        {
            InitializeComponent();
        }
        private jishiben fuform2;
        public tihuan(string sss, jishiben fuchuangti2)
        {
            InitializeComponent();
            textBox1.Text = sss;
            fuform2 = (jishiben)fuchuangti2;
        }
        private int Count = -1;
        private void button1_Click(object sender, EventArgs e)
        {
            if (Count == -1)
            {
                this.fuform2.textBox1.Select(this.fuform2.textBox1.Text.IndexOf(this.textBox1.Text), this.textBox1.Text.Length);
                Count = this.fuform2.textBox1.Text.IndexOf(this.textBox1.Text);
            }
            else
            {
                this.fuform2.textBox1.Select(this.fuform2.textBox1.Text.IndexOf(this.textBox1.Text, Count + 1), this.textBox1.Text.Length);
                Count = this.fuform2.textBox1.Text.IndexOf(this.textBox1.Text, Count + 1);
                if (Count >= this.fuform2.textBox1.Text.Length - 1)
                {
                    MessageBox.Show("已找不到此项", "记事本", MessageBoxButtons.OK);
                }
            }
            this.fuform2.Focus();
        }
        private void button4_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}
//查找
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace jishibenwenjian
{
    public partial class chazhao : Form
    {
        public chazhao()
        {
            InitializeComponent();
        }
        private jishiben fuform;
        public chazhao(string ss, jishiben fuchuangti)
        {
            InitializeComponent();
            textBox1.Text = ss;
            fuform = (jishiben)fuchuangti;
        }
        private int Count = -1;
        private void button1_Click_1(object sender, EventArgs e)
        {
            if (Count == -1)
            {
                this.fuform.textBox1.Select(this.fuform.textBox1.Text.IndexOf(this.textBox1.Text), this.textBox1.Text.Length);
                Count = this.fuform.textBox1.Text.IndexOf(this.textBox1.Text);
            }
            else
            {
                if (radioButton2.Checked == true && Count < this.fuform.textBox1.Text.Length-1)
                {
                    this.fuform.textBox1.Select(this.fuform.textBox1.Text.IndexOf(this.textBox1.Text, Count + 1), this.textBox1.Text.Length);
                    Count = this.fuform.textBox1.Text.IndexOf(this.textBox1.Text, Count + 1);
                    if (Count >= this.fuform.textBox1.Text.Length-1)
                    {
                        MessageBox.Show("已找不到此项", "记事本", MessageBoxButtons.OK);
                    }
                }
                if (radioButton1.Checked == true && Count > 0)
                {
                    this.fuform.textBox1.Select(this.fuform.textBox1.Text.LastIndexOf(this.textBox1.Text, Count - 1), this.textBox1.Text.Length);
                    Count = this.fuform.textBox1.Text.LastIndexOf(this.textBox1.Text, Count - 1);
                    if (Count <=0)
                    {
                        MessageBox.Show("已找不到此项", "记事本", MessageBoxButtons.OK);
                    }
                }
            }
            this.fuform.Focus();
        }
        private void button2_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}
原文地址:https://www.cnblogs.com/XMH1217423419/p/4298621.html