利用反射绑定事件处理程序(C#)
2009-06-12 00:53
766 查看
该篇文章是我于2009年6月10日通过自己编写的工具,批量从位于在博客园的博客站点(http://chenxizhang.cnblogs.com)同步而来。文章中的图片地址仍然是链接到博客园的。特此说明!陈希章原文地址:http://www.cnblogs.com/chenxizhang/archive/2009/06/11/1501621.html原文标题:利用反射绑定事件处理程序(C#) 原文发表:2009/6/11 11:18:00 |
using System;
using System.Collections.Generic;
using System.Text; using System.Reflection; namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
Customer c = new Customer();
c.OnChange += new EventHandler(c_OnChange); c.Change();
Console.Read(); } static void c_OnChange(object sender, EventArgs e)
{
Console.WriteLine("事件被触发了");
}
} class Customer
{
public event EventHandler OnChange;
public void Change()
{
if (OnChange != null)
OnChange(this, null);
}
}
}
值得了解的另外一个写法
using System;
using System.Collections.Generic;
using System.Text; using System.Reflection; namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
Customer c = new Customer();
EventInfo evt = c.GetType().GetEvent("OnChange",
BindingFlags.NonPublic | BindingFlags.Instance
| BindingFlags.Public
); evt.AddEventHandler(c, new EventHandler(c_OnChange)); c.Change();
Console.Read(); } static void c_OnChange(object sender, EventArgs e)
{
Console.WriteLine("事件被触发了");
}
} class Customer
{
public event EventHandler OnChange;
public void Change()
{
if (OnChange != null)
OnChange(this, null);
}
}
}
作者:陈希章 出处:http://blog.csdn.net/chen_xizhang 本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
相关文章推荐
- 利用反射绑定事件处理程序(C#)
- 利用反射绑定事件处理程序(C#)
- 利用反射绑定事件处理程序(C#)
- C#利用反射绑定事件处理过程
- 利用反射获得委托和事件以及创建委托实例和添加事件处理程序
- jquery之jquery事件处理模型(利用jquery绑定事件处理程序)
- C#利用反射动态绑定事件
- 利用反射获得委托和事件以及创建委托实例和添加事件处理程序
- 利用反射获得委托和事件以及创建委托实例和添加事件处理程序
- Asp.Net 利用反射获得委托和事件以及创建委托实例和添加事件处理程序
- (C#)中断程序流程,处理事件(委托,事件,Lambda表达式)-2/3
- (C#)中断程序流程,处理事件(委托,事件,Lambda表达式)-3/3
- EA&UML日拱一卒-0基础学习微信小程序(8)-事件处理和数据绑定
- 如何判断某个事件已经绑定了某个事件处理程序?
- C#中动态创建控件及事件处理程序
- 事件处理程序的绑定
- 事件绑定(事件处理程序)
- trigger 根据绑定到匹配元素的给定的事件类型执行所有的处理程序和行为。
- C# 用反射动态绑定事件
- C#中动态创建控件及事件处理程序