关于Click事件sender参数问题
public frmTestEvent()
{
InitializeComponent();
//自定义一个弹出菜单
ContextMenu cm = new ContextMenu();
this.ContextMenu = cm;
cm.MenuItems.Add("测试Sender!");
cm.MenuItems[0].Click += new EventHandler(OnTest_Click);
//自定义一个按钮
Button btn = new Button();
btn.Text = "测试";
btn.Click += new EventHandler(OnButton_Click);
this.Controls.Add(btn);
}
private void OnButton_Click(object sender, EventArgs e)
{
//因为你知道是什么控件绑定这个事件,所以sender就是触发事件的事件源
Button btn = sender as Button;
btn.Text = btn.Text + "0";
}
private void OnTest_Click(object sender, EventArgs e)
{
//因为你知道是什么控件绑定这个事件,所以sender就是触发事件的事件源
MenuItem item = sender as MenuItem;
item.Checked = !item.Checked;
}
sender参数是触发该事件的事件源(可能是控件或其它对象)
关于Click事件EventHandler描述
// 摘要:
// 表示将处理不包含事件数据的事件的方法。
//
// 参数:
// sender:
// 事件源。
//
// e:
// 不包含任何事件数据的 System.EventArgs。
[Serializable]
[ComVisible(true)]
public delegate void EventHandler(object sender, EventArgs e);
// 表示将处理不包含事件数据的事件的方法。
//
// 参数:
// sender:
// 事件源。
//
// e:
// 不包含任何事件数据的 System.EventArgs。
[Serializable]
[ComVisible(true)]
public delegate void EventHandler(object sender, EventArgs e);

参考文档:
解决方案:C# 当按钮不可见时(Visible=False),调用Button.PerformClick事件无效!
DevExpress GridView 表格内嵌ButtonEdit按钮列图片按钮及Click事件
C#.NET7 VS2022 使用反射动态设置按钮Click事件
C#获取按钮的EventClick事件,EventHandlerList委托的调用列表
关于LookupEdit组件选择一条纪录不触发EditValueChanged事件
关于frmBaseChild.SetParameter方法说明与使用,打开窗体传入参数例子
C#深入剖析事件(C# Event详解)
Winform软件快速开发平台 - 关于数据权限,表格列权限控制两种解决方案
关于SetEditorBindingValue方法的使用
BUG01:打开子窗体(sender as ToolStripMenuItem)是null,取不到权限
LookupEdit 支持录入新值 - ProcessNewValue 事件
DevExpressV22:RepositoryItemComboBox的QueryPopUp事件无法动态加载数据项
ButtonStateChanged事件详解 - 当按钮状态改变时触发的事件
修改单元格关联更新其它列的值,Dev GridView组件OnCellValueChanged事件实现
DevExpress GridView表格CustomUnboundColumnData事件异步加载图片
关于NavBarControl点击ExpandButton缩放后不能控制Dock组件的问题
解决方案:C# 当按钮不可见时(Visible=False),调用Button.PerformClick事件无效!
DevExpress GridView 表格内嵌ButtonEdit按钮列图片按钮及Click事件
C#.NET7 VS2022 使用反射动态设置按钮Click事件
C#获取按钮的EventClick事件,EventHandlerList委托的调用列表
关于LookupEdit组件选择一条纪录不触发EditValueChanged事件
关于frmBaseChild.SetParameter方法说明与使用,打开窗体传入参数例子
C#深入剖析事件(C# Event详解)
Winform软件快速开发平台 - 关于数据权限,表格列权限控制两种解决方案
关于SetEditorBindingValue方法的使用
BUG01:打开子窗体(sender as ToolStripMenuItem)是null,取不到权限
LookupEdit 支持录入新值 - ProcessNewValue 事件
DevExpressV22:RepositoryItemComboBox的QueryPopUp事件无法动态加载数据项
ButtonStateChanged事件详解 - 当按钮状态改变时触发的事件
修改单元格关联更新其它列的值,Dev GridView组件OnCellValueChanged事件实现
DevExpress GridView表格CustomUnboundColumnData事件异步加载图片
关于NavBarControl点击ExpandButton缩放后不能控制Dock组件的问题
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
在线客服
