网站维护具体怎么做呀,在拼多多上怎么开网店,wordpress 后台管理界面插件,电子商务网站环境建设虽然在博客园里面已经有很多关于C#委托和事件的文章#xff0c;但是为了自己在学习的过程中#xff0c;加深对委托的理解#xff0c;我还是决定写一下自己的心得体会。以备他日在回来复习。委托#xff08;delegate#xff09;是一个类#xff0c;但是这个类在声明的时候… 虽然在博客园里面已经有很多关于C#委托和事件的文章但是为了自己在学习的过程中加深对委托的理解我还是决定写一下自己的心得体会。以备他日在回来复习。委托delegate是一个类但是这个类在声明的时候跟普通的类有些不同。不带class 关键字等。如下 View Code static void Main(string[] args) { Test(); Console.ReadKey(); }static void SayHello(string name) { Console.WriteLine(Nice to me you name); }static void SayHelloToo(string name) { Console.WriteLine(Nice to me you too!name); }public delegate void DoSomething(string name);//声明一个委托类 static event DoSomething MyEvent; //声明一个DoSomething类型的事件。 public static void Test() { DoSomething ds1 new DoSomething(SayHello); //声明一个DoSomething委托类型的对象 DoSomething ds2 new DoSomething(SayHelloToo); ds1(杨凤辉); //委托对象相当于对应函数的指针 MyEvent ds1; // 将两个委托对象绑定到事件对象上。 MyEvent ds2; // -为取消绑定。 MyEvent(YFH); //此行为触发事件事件触发后会通知绑定的方法并执行。 } 新建一个委托对象就相当于该对象是参数方法的指针应用一般事件都是针对于某一具体的委托的事件。一个事件可以绑定多个方法事件触发后绑定的方法会依次被执行。 在其他牛人的博客内有一个很好的举例。在Windows程序设计中在设计器中双击一个按钮button1.会自动生成该button的单击响应函数 private void button1_Click(object sender, EventArgs e) { } 你会发现几乎所有方法都是两个参数的:object sender, EventArgs e。微软为这些方法定义了一个委托private System.EventHandler(object sender,EventArgs e)。我们查看Designer.cs里面button1对象的属性。有一个click的事件属性绑定了button1_Click方法。 this.button1.Click new System.EventHandler(this.button1_Click) 。 有一点我不明白的是事件与委托对象有关系吗在声明事件的时候也是关于某个委托的事件而委托对象也是关于该委托的对象。难道那么都是该委托类的对象转载于:https://www.cnblogs.com/YangFengHui/archive/2011/04/17/2018929.html