实现该菜单功能主要有两种方法:
第一种:通过发送击键到应用程序来实现。
先焦点定位到当前活动的RichTextBox,然后再通过发送击键命令来实现操作功能:
richTextBox1.Focus();
SendKeys.Send("^a");//全选
SendKeys.Send("^c");//复制
SendKeys.Send("^x");//剪切
SendKeys.Send("^v");//粘贴
通过 RichTextBox,contextMenuStrip 实现:
通过 RichTextBox控件的context属性 绑定你设置的contextmenustrip
richTextBox1. SelectAll();//全选
richTextBox1.Copy();//复制
richTextBox1.Cut();//剪切
richTextBox1.Paste();//粘贴
private void contextMenuStrip1_Click(object sender, System.EventArgs e)
{ richTextBox1.Cut();} // 剪切
private void contextMenuStrip1_Click(object sender, System.EventArgs e)
{ richTextBox1.Copy();} // 拷贝
private void contextMenuStrip1_Click(object sender, System.EventArgs e)
{ richTextBox1.Paste();} // 粘贴
private void contextMenuStrip1_Click(object sender, System.EventArgs e)
{ richTextBox1.Undo();} // 撤销
private void contextMenuStrip1_Click(object sender, System.EventArgs e)
{ richTextBox1.Redo();} // 恢复
第二种:直接通过命令操作剪贴板实现
//复制
Clipboard.SetData(DataFormats.Rtf, richTextBox1.SelectedRtf);
//剪切
Clipboard.SetData(DataFormats.Rtf, richTextBox1.SelectedRtf);
richTextBox1.SelectedRtf="";
//粘贴
richTextBox1.Paste();
//全选(其中全选又有两种方式)
richTextBox1.Focus();//设置先焦点定位到当前活动的RichTextBox,这一句很重要,否则它不能正确执行
//另一种则是通过Select(int start,int length)方法来实现
richTextBox1.Select(0, richTextBox1.Rtf.Length); //richTextBox1.Rtf.Length代表RichTextBox中文字的长度
//一种是直接采用NET框架当中提供的SelectAll()方法,进行全选
//richTextBox1.SelectAll();