按如下的步骤操作:
1.创建一个新的Windows工程。
2.把ContextMenuStrip控件拖放到设计界面上,Name属性设置为cmMenu.
3.单击ContextMenuStrip控件的Type Here文本区域,可以输入菜单项的名称,如&new,然后回车.
4.添加RichTextBox控件,设置Name属性为"rchShow".
设置Form和RichTextBox的ContextMenuStript属性为“cmMenu”。
7.双击ContextMenuStrip控件的菜单项,添加Open事件。
代码如下:
/// <summary> /// 右键菜单Open的处理事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /// www.jb200.com private void miOpen_Click(object sender, EventArgs e) { OpenFileDialog dlgOpen = new OpenFileDialog(); dlgOpen.Filter = "文本文件(*.txt)|*.txt"; if (dlgOpen.ShowDialog() == DialogResult.OK) { this.rchShow.LoadFile(dlgOpen.FileName,RichTextBoxStreamType.PlainText); } } private void Form1_Load(object sender, EventArgs e) { ContextMenuStrip cms = new ContextMenuStrip(); cms.Items.Add("第一个"); cms.Items.Add("第二个"); this.ContextMenuStrip = cms; }
ContextMenu的添加:
1、利用VS内置控件实现
窗体上添加ContextMenuStrip,编辑其属性和事件,然后在控件中指定属性ContextMenuStrip。
2、DevExpress控件的实现
DevExpress需要用到BarManager、PopMenu两个控件,指定PopMenu的manager属性为BarManager,然后对popmenu做Customize,最后在控件的mouseup事件中进行编码显示右键菜单。
要点:如何在鼠标点击的位置显示右键菜单。
简单例子:
if(e.Button == MouseButtons.Right) { popupMenu1.ShowPopup(dataGridView1.PointToScreen(e.Location)); }