C#上位机开发—— 右键菜单的使用

Posted Mculover666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#上位机开发—— 右键菜单的使用相关的知识,希望对你有一定的参考价值。

一、菜单控件的基本使用

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");

看看效果:

以上是关于C#上位机开发—— 右键菜单的使用的主要内容,如果未能解决你的问题,请参考以下文章

C#上位机开发—— 右键菜单的使用

开发Modbus上位机程序

c#上位机开发

C#上位机开发—— 美化界面(给按钮添加背景)

C#上位机开发—— 修改窗口图标和exe文件图标

C#上位机开发——SerialAssistant界面升级(WinForm界面布局进阶)