社区
C#
帖子详情
关于C#中的事件绑定
wildwolfsun
2005-07-28 08:32:08
在WinForm中,能不能判断一个Button是否绑定了处理程序呢?
如果可以,该怎么做呢?
...全文
899
16
打赏
收藏
关于C#中的事件绑定
在WinForm中,能不能判断一个Button是否绑定了处理程序呢? 如果可以,该怎么做呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qpl007
2005-08-01
打赏
举报
回复
public bool CheckButtonClientEvent()
{
return this.button1.Click != null;
}
外部调用:
xx.CheckButtonClientEvent()
zhongwanli
2005-07-31
打赏
举报
回复
一楼
fan2c
2005-07-31
打赏
举报
回复
不过用歪办法也许就可能了,不过我技术浅薄
fan2c
2005-07-31
打赏
举报
回复
外部应该不可以判断,不然还用private这个限制做什么,就是要保护代码安全性
elixir2002
2005-07-31
打赏
举报
回复
弓虽!!
莫情莫钱
2005-07-31
打赏
举报
回复
有见解,支持
yk1028
2005-07-31
打赏
举报
回复
如果按钮click绑定的事件方法是系统默认产生的,可以试试如下,
如在Form1中判断Form2(或Form1本身)中的所有按钮是有事件,则
Form2 f=new Form2();
fe(f,f);
//Form1中调用时.如是判断Form1中按钮,直接fe(this,this),调试过的,代码就不格式化了
private void fe(Form frm,Control pctl)
{
foreach(Control ctl in pctl.Controls)
{
if(ctl is Button)
{
if(HaveBindClickEvent(frm,(Button)ctl))
this.listBox1.Items.Add(ctl.Name);
}
if(ctl.Controls.Count>0)
fe(frm,ctl);
}
}
private bool HaveBindClickEvent(Control frm,Button btn)
{
System.Reflection.Assembly a=System.Reflection.Assembly.GetAssembly(frm.GetType());
System.Type typ=a.GetType(frm.GetType().FullName,true);
System.Reflection.MethodInfo[] methods=typ.GetMethods(BindingFlags.Instance|BindingFlags.NonPublic);
foreach(MethodInfo mi in methods)
{
if(mi.Name.StartsWith(btn.Name + "_Click")) //按钮事件不要乱改
return true;
}
return false;
}
wxwx110
2005-07-30
打赏
举报
回复
if ( button1.Click!=null)
{}
gudengyeren
2005-07-30
打赏
举报
回复
支持楼上们的,
iceflylee
2005-07-30
打赏
举报
回复
判定绑定事件和封不封装没啥关系吧!!!
if (button1.Click == null)
{
}
对啊
wildwolfsun
2005-07-30
打赏
举报
回复
button1是封装了的
大家都有一点想当然了吧
wildwolfsun
2005-07-30
打赏
举报
回复
那个只能在声明事件成员的类的内部可以
出了那个类出了那个就不可以了
而我需要的是出了类的
qpl007
2005-07-28
打赏
举报
回复
就是:
button1.Click 是否== null
cdo
2005-07-28
打赏
举报
回复
if (button1.Click == null)
{
}
JasonHeung
2005-07-28
打赏
举报
回复
同意楼上。
ruihuahan
2005-07-28
打赏
举报
回复
如果button1.Click == null,则未绑定事件处理程序。
C#
datagridview 与数据源
绑定
后对数据的,增加,删除,插入,更新
C#
datagridview 与数据源
绑定
后对数据的,增加,删除,插入,更新
C#
datagridview 与数据源
绑定
后对数据的,增加,删除,插入,更新
WPF开发教程 ----WPF
C#
编程 界面开发(很不错)
WPF开发教程.rar 目录 WPF基础入门 3 1. WPF基础之体系结构 3 2. WPF基础之XAML 9 3. WPF基础之基元素 23 4. WPF基础之属性系统 26 5. WPF基础之路由
事件
33 6. WPF基础之布局系统 46 7. WPF基础之样式设置和模板化 51 8. 详谈WPF开发
中
的数据虚拟化 64 XAML语法 74 1. XAML语法术语 74 2. 代码隐藏和XAML 82 3. XAML和自定义类 83 4. 标记扩展和XAML 87 5. XAML命名空间和命名空间映射 90 6. WPF名称范围 92 WPF控件开发 95 1. WPF控件开发之控件概述 95 2. 使用XAML创建按钮 103 3. WPF控件库之BUTTON 114 4. WPF控件库之MENU 115 5. WPF控件库之LABLE 119 6. WPF控件库之TOOLBAR 121 7. WPF控件开发之自定义控件 124 8. WPF控件开发之装饰器 140 WPF数据
绑定
143 1. 数据
绑定
概述 143 2. WPF数据
绑定
之
绑定
源 164 3. WPF数据
绑定
之数据模板 166 4. WPF数据
绑定
之
绑定
声明 181 5. 实例一:
绑定
到ADO.NET数据源 184 6. 实例二:
绑定
到LINQ查询的结果 186 WPF图形和多媒体开发 187 1. WPF 图形动画和媒体概述 187 2. WPF的图形呈现 191 3. WPF的图像处理 205 4. WPF的三维图形应用 219 5. WPF的三维变换应用 229 6. WPF的动画开发 238 7. WPF的多媒体开发 250
C#
高性能大容量SOCKET并发完成端口例子
例子主要包括SocketAsyncEventArgs通讯封装、服务端实现日志查看、SCOKET列表、上传、下载、远程文件流、吞吐量协议,用于测试SocketAsyncEventArgs的性能和压力,最大连接数支持65535个长连接,最高命令交互速度达到250MB/S(使用的是127.0.0.1的方式,相当于千兆网卡1Gb=125MB/S两倍的吞吐量)。服务端用
C#
编写,并使用log4net作为日志模块; 同时支持65536个连接,网络吞吐量可以达到400M。
c#
开发Android应用实战
《
C#
开发Android应用实战——使用Mono for Android和.NET/
C#
全面透彻地讲解Android应用编程知识,分析如何结合使用
C#
和Mono来编写在Android设备系列上运行的应用程序。在这本由多位专家联袂撰写的必备精品书籍的指引下,您不必学习其他编程语言,就可以成为一名成功的Android应用程序开发人员。您将深入理解屏幕控件、UI开发、表、布局和MonoDevelop等知识点,并驾轻就熟地使用Mono for Android来规划、构建和开发Android应用程序。 主要内容 ◆ 介绍如何使用您已经掌握的
C#
和.NET技术来构建Android app ◆ 详述使用数据以及将数据
绑定
到控件的最佳方法 ◆ 解释如何针对Android设备硬件编写程序 ◆ 深入分析文件系统和应用程序首选项 ◆ 讨论如何在Mono for Android、MonoTouch和WindowsPhone 7之间共享代码 ◆ 列出通过国际化和本地化支持功能来实现应用程序全球化的技巧 ◆ 介绍如何使用Android 4开发平板应用
C#
串口介绍以及简单串口通信程序设计和实现
C#
串口介绍以及简单串口通信程序设计实现 源代码和串口程序介绍连接:https://www.cnblogs.com/JiYF/p/6618696.html 本站积分太贵,自己变得。。直接到连接地址下载代码 周末,没事干,写个简单的串口通信工具,也算是本周末曾来过,废话不多,直接到主题 串口介绍 串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。(至于再详细,自己百度) 串口应用: 工业领域使用较多,比如:数据采集,设备控制等等,好多都是用串口通信来实现!你要是细心的话,你会发现,目前家用国网智能电能表就具备RS485通信总线(串行总线的一种)与RS232可以相互转化(当然一般,非专业的谁也不会闲的蛋疼,趴电表上瞎看,最多也就看看走了多少度电) RS232 DB9介绍: 1.示意图 2.针脚介绍: 载波检测(DCD) 接受数据(RXD) 发出数据(TXD) 数据终端准备好(DTR) 信号地线(SG) 数据准备好(DSR) 请求发送(RTS) 清除发送(CTS) 振铃指示(RI) 3.实物图: 以下是我购买XX公司的一个usb转串口线:这个头就是一个公头,另一端是一个usb口 笨小孩串口工具运行图: 1.开启程序 2.发送一行字符串HelloBenXH,直接将针脚的发送和接收链接起来就可以测试了(针脚2 接受数据(RXD) 和3 发出数据(TXD))直接链接,
C#
代码实现:采用SerialPort 1.实例化一个SerialPort [csharp] view plain copy 在CODE上查看代码片派生到我的代码片 private SerialPort ComDevice = new SerialPort(); 2.初始化参数
绑定
接收数据
事件
[csharp] view plain copy 在CODE上查看代码片派生到我的代码片 public void init() { btnSend.Enabled = false; cbbComList.Items.AddRange(SerialPort.GetPortNames()); if (cbbComList.Items.Count > 0) { cbbComList.SelectedIndex = 0; } cbbBaudRate.SelectedIndex = 5; cbbDataBits.SelectedIndex = 0; cbbParity.SelectedIndex = 0; cbbStopBits.SelectedIndex = 0; pictureBox1.BackgroundImage = Properties.Resources.red; ComDevice.DataReceived += new SerialDataReceivedEventHandler(Com_DataReceived);//
绑定
事件
}
C#
110,545
社区成员
642,580
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章