一、菜单控件的基本使用
1. ListBox
放置一个ListBox,用于右键菜单操作,并默认添加5个数据项:
2. 添加菜单控件
添加右键菜单控件:
3. 为每个菜单项添加名称
点击右键菜单控制中的【添加】菜单项,然后在属性中找到Name,修改名称:
同样,修改其它两个菜单项的名称。
二、设置为右键菜单
1. 添加鼠标单击事件
给ListBox添加鼠标事件MouseUp:
2. 弹出菜单
在鼠标单击事件回调函数中,弹出菜单:
private void listBox1_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
contextMenuStrip1.Show(listBox1, e.Location);
}
}
运行,效果如下:
3. 根据鼠标点击位置区分不同功能
private void listBox1_MouseUp(object sender, MouseEventArgs e)
{
// 是否右键单击
if (e.Button == MouseButtons.Right)
{
// 是否在空白处单击
int index = listBox1.IndexFromPoint(e.Location);
if (index >= 0)
{
// 选中该项
listBox1.SetSelected(index, true);
// 开启修改、添加、删除功能
ModifyToolStripMenuItem.Enabled = true;
DeleteToolStripMenuItem.Enabled = true;
}
else
{
// 清空选择
listBox1.ClearSelected();
// 空白处单击,只显示添加
ModifyToolStripMenuItem.Enabled = false;
DeleteToolStripMenuItem.Enabled = false;
}
contextMenuStrip1.Show(listBox1, e.Location);
}
}
运行,看看效果:
三、右键菜单项的回调
直接双击该菜单项:
自动添加回调函数:
private void AddToolStripMenuItem_Click(object sender, EventArgs e)
{
listBox1.Items.Add("new student");
}
看看效果: