設定表單的ContextMenuStrip屬性或者也可以在按鈕單擊事件裡調出:
private void button_Click(object sender, EventArgs e)
{
Button btn = sender as Button;
btn.FlatAppearance.BorderSize = 0;
Point point = new Point(btn.Left + this.Left + 5, btn.Top + this.Top + 40);
contextMenuStrip.Show(point);
}/// <summary>
/// 綁定右鍵菜單
/// </summary>
private void BindMenu()
{
ToolStripMenuItem menu0 = GetMenuItem("一級1", imageList1.Images[0]);
ToolStripMenuItem menu01 = GetMenuItem("二級11", imageList1.Images[1]);
menu01.Click += new EventHandler(toolStripMenuItem_Click);//添加事件
ToolStripMenuItem menu02 = GetMenuItem("二級12", imageList1.Images[2]);
menu0.DropDownItems.Add(menu01);
menu0.DropDownItems.Add(menu02);
cMenu.Items.Add(menu0);
ToolStripMenuItem menu1 = GetMenuItem("一級2", imageList1.Images[0]);
ToolStripMenuItem menu11 = GetMenuItem("二級21", imageList1.Images[1]);
ToolStripMenuItem menu12 = GetMenuItem("二級22", imageList1.Images[2]);
menu1.DropDownItems.Add(menu11);
menu1.DropDownItems.Add(menu12);
cMenu.Items.Add(menu1);
}
/// <summary>
/// 功能表項目事件響應
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void toolStripMenuItem_Click(object sender, EventArgs e)
{
ToolStripMenuItem menu = sender as ToolStripMenuItem;
MessageBox.Show(menu.Text);
}
/// <summary>
/// 產生功能表項目
/// </summary>
/// <param name="txt"></param>
/// <param name="img"></param>
/// <returns></returns>
private ToolStripMenuItem GetMenuItem(string txt,Image img)
{
ToolStripMenuItem menuItem = new ToolStripMenuItem();
menuItem.Text = txt;
menuItem.Image = img;
return menuItem;
}
url:http://greatverve.cnblogs.com/archive/2012/03/13/ContextMenuStrip.html