您的当前位置:首页>全部文章>文章详情

【C#】C# Winfrom 右键菜单

CrazyPanda发表于:2024-02-02 22:53:40浏览:362次TAG:

目录

一、概述

二、新建 winform 项目

三、给图片控件添加右键菜单

四、给菜单添加点击事件

五、测试

结束




一、概述

ContextMenuStrip 是 Windows 窗体应用程序中的一个控件,它提供了一个弹出菜单,用于在用户右键单击控件或其他界面元素时显示上下文相关的选项。它通常用于在图形用户界面中提供快捷操作和功能。

ContextMenuStrip 控件可以通过在 Visual Studio 的设计器中拖放方式添加到窗体上,或者通过编程方式创建和配置。它可以与其他控件(如按钮、文本框等)关联,以便在用户右键单击这些控件时显示相应的菜单选项。

要使用 ContextMenuStrip 控件,您需要为它添加菜单项。菜单项可以通过设计器中的上下文菜单项集合进行配置,也可以通过编程方式进行操作。每个菜单项都可以设置文本、图标、快捷键等属性,并且可以关联事件处理程序,以便在用户选择菜单项时执行相应的操作。

除了基本的菜单项,ContextMenuStrip 还支持子菜单的创建。子菜单允许您创建多级菜单结构,以便更好地组织和呈现选项。 使用 ContextMenuStrip 控件,您可以轻松地为您的应用程序添加弹出菜单功能,提供更好的用户交互体验和操作便捷性。



二、新建 winform 项目

拖入一张图片控件,其他的控件也行,再拖入一个 ContextMenuStrip 控件

1.png

在  ContextMenuStrip 控件里添加两个菜单


三、给图片控件添加右键菜单

点击图片控件,在属性行为中找到 ContextMenuStrip 选项

1.png

选择刚刚创建的菜单 ContextMenuStrip 控件,这里的控件名是自定义的

1.png


四、给菜单添加点击事件

在视图界面上,对菜单1,菜单2 选项双击,会自动生成点击事件。

点击菜单2,在属性窗口也可以看到具体设置 ,比如,菜单2的点击事件

1.png

1.png

在Form1中,就随意加点代码吧

        private void 菜单1ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Console.WriteLine("菜单1");
        }
 
        private void 菜单2ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Console.WriteLine("菜单2");
        }

将输出类型改为控制台输出

1.png


五、测试

点击右键

1.png

点击菜单1,就可以看到运行效果了

1.png


其实多加几个 ContextMenuStrip 控件不会有影响

1.png


源码:点击下载


结束

如果这个帖子对你有所帮助,欢迎 关注 、点赞 、留言

end

原文链接https://blog.csdn.net/qq_38693757/article/details/125758808

猜你喜欢

【C#】Winform NanUI 相关功能整合
目录NanUI 0.88版本 去掉启动界面(遮罩)NanUI 0.88版本 读取本地资源和嵌入式资源NanUI 0.77版本 打开控制台NanUI 0.77版本 C#调用多个参数的JS方法NanUI 0.77版本 传递数组参数NanUI 0.77版本 设置窗体全屏显示(类似Kiosk模式)NanUI 0.77版本 Bootstrap类 APINanUI 0.88版本 去掉启动界面(遮罩)启动界面是作者给我们显示公司产品的Logo用的,如果用不着可以去掉,但必须要更改源码,如果不想改源码,直接将启
发表于:2024-02-09 浏览:380 TAG:
【C#】C# Winform自动更新
目录一、需求二、更新文件列表生成器三、软件启动器1.判断是否需要更新2.文件下载3.执行 下载,覆盖,删除任务4.执行结果四、搭建更新服务器1.启动服务器2.新建项目本体3.给启动软件加密4.修改版本号五、整体测试1.生成更新文件2.软件更新3.下载最新的版本4.打开软件本体5.总结结束当前项目已停止维护,推荐使用 FTP 版自动更新C# 自动更新(基于FTP)_c# 程序自动升级-CSDN博客一、需求在Unity里面,有XLua,ILRuntime 这样的热更新框架,有Unity经验的人都知道
发表于:2024-02-01 浏览:349 TAG:
【C#】C# Winform 热更新 基于ECSharp框架
目录一、简介二、 ECSharp热更新演示三、Winform 热更新实战结束一、简介ECSharp (原:EasySharpFrame)github 地址:https://github.com/suxf/ECSharp介绍:1.HTTP服务 2.Websocket服务 3.HyperSocket<自定义Socket服务> 4.TimeFlow<时间流> 5.Sqlserver数据库助手 6.Mysql数据助手 7.Redis数据库助手 8.Log功能 9.热更新
发表于:2024-02-05 浏览:305 TAG:
【C#】C# NLua Winform 热更新
一、概述NLua 是一个用于 .NET 平台的 Lua 脚本绑定库。它允许在 C# 代码中嵌入 Lua 脚本,并允许两者之间进行交互。NLua 的主要特点包括:轻量级:NLua 是一个轻量级的库,易于集成到现有的 .NET 项目中。动态类型:Lua 是动态类型的语言,这意味着变量的类型可以在运行时改变。灵活的绑定:NLua 提供了灵活的绑定机制,使得 C# 和 Lua 之间的数据交互变得简单。丰富的 API:NLua 提供了丰富的 API,以便在 Lua 脚本中调用 .NET 的类和方法。调试支
发表于:2024-02-18 浏览:358 TAG:
【C#】Winform NanUI 0.88版本 JS和C#相互调用
目录一、需求版本二、实例JS调用C#注册的只读属性JS调用C#注册的字段JS调用C#注册的同步方法JS调用C#注册的异步方法C#注册一个方法,JS调用并传递参数C#注册一个方法,JS调用并接收C#返回值C#注册一个方法,接收JS的数组参数C#注册一个方法,接收JS的一个函数,执行这个JS函数,并将C#的值传递过去三、结束一、需求在软件的界面和软件逻辑分离后,最重要的就是要处理参数的传递,和函数的调用,因此存在JS中和C#相互调用的需求。版本NanUI 版本:0.8.80.191二、实例using
发表于:2024-02-06 浏览:379 TAG:
【C#】C#调用win10系统自带软键盘的方法
上次做了个笔记是关于调用windows系统自带的触摸键盘的方法:C#调用Windows系统自带触摸键盘的方法_c# 虚拟键盘-CSDN博客除了调用触摸键盘,我们也可以通过调用win10的自带软键盘作为输入途径。方法很简单。1、添加using System.Diagnostics引用。2、创建进程Process Winvirkey = Process.Start("osk.exe");3、打开键盘:Winvirkey = Process.Start("osk.exe&
发表于:2024-01-29 浏览:367 TAG:
【C#】从零开始用C#写一个桌面应用程序(二)一个表白程序
恶搞表白小程序如何添加按钮,如何添加属性和事件请移步前文。基础操作第一步:新建窗口  在工具箱内找到label和button,拖到form上,设置它们的size属性,autosize属性,text属性。第二步:添加事件为了实现我们的效果,需要给三个按钮分别设计点击事件,鼠标移入事件,鼠标点下事件。分别为click,mouseenter,mousedown事件。第三步:实现移动逻辑this获取form对象,clientsize获取实时大小,使用随机数值,设置对应按钮位置。将对应
发表于:2024-01-30 浏览:304 TAG:
【C#】C# Winform SplitContainer组件创建侧边菜单
效果一,SplitContainer 基本操作新建一个 Winform 项目,在Form1中拖进一个 SplitContainer 组件默认的界面如下这时候,你会发现,左侧菜单栏的宽度也太宽了吧,按照以前的经验,你一定会用鼠标去拖拽,这时候你就会发现,鼠标根本拖不动,不信你可以试试这时候,我们按Esc键,鼠标再移动到边框的时候,鼠标图标就会变成一个 “+” 状的图标,这时候就可以拖拽了此时,左侧的Panel1内还没有任何组件,运行后的效果我们添加一个按钮到 Panel1 试试运行后发现
发表于:2024-02-01 浏览:550 TAG:
【C#】C#二分查找(迭代与递归)
        二分搜索被定义为一种在排序数组中使用的搜索算法,通过重复将搜索间隔一分为二。二分查找的思想是利用数组已排序的信息,将时间复杂度降低到O(log N)。二分查找算法示例 何时在数据结构中应用二分查找的条件: 应用二分查找算法:         1、数据结构必须是有序的。         2、访问数据结构的任何元素都
发表于:2024-03-11 浏览:315 TAG:
【C#】Winform NanUI 0.77版本 JS和C#相互调用
目录一、导入插件二、常用方法三、C#和JS相互调用1.C# 调用JS2.JS调用C#方法3.完整版C#代码4.完整版JS代码结束一、导入插件用的NanUI版本0.77参考官方地址:https://docs.formium.net/zh-hans/tutorial/first-app.html二、常用方法基础代码:using NetDimension.NanUI; using NetDimension.NanUI.Browser;   class MainW
发表于:2024-02-06 浏览:392 TAG: