ASP.NET (C#) 事件触发 用+=想不明白是什么意思和是什么作用?

来源:百度知道 编辑:UC知道 时间:2024/06/30 11:20:41
前几天看了天轰穿的教程中的接口教程,有个地方想不明白,不知是怎么回事??

以下是接口类的代码:
namespace IB
{
public delegate void ModIfy(string sender);//声明一个委托,触发修改书名
public interface IBook
{
string BookName { get;set; }//声明接口中的属性
void InsertToDate(); //声明接口中的方法
event ModIfy ModIfyBookName;//声明接口中的事件
}
public class Book : IBook
{//声明一个类,它继承了接口IBook
public event ModIfy ModIfyBookName;//实现它的事件
string bookname;
public Book(string bn)
{
bookname = bn;
}
/// <summary>
/// 实现接口中的BookName属性
/// </summary>
public string BookName
{
get { return bookname; }
set
{
bookname = value;
this.ModIfyBookName(value); //在这里触发接口中的事件
}
}
///

b.ModIfyBookName +=new ModIfy(b_ModIfyBookName);
这是事件的处理绑定

就是 ModIfyBookName 这个事件,由 ModIfy 这个函数来处理

把ModIfyBookName 事件 委托给ModIfy来做。

怎么解释呢?
好比公安局的局长,现在发生一起“案件”(事件ModIfyBookName );

局长自己不想出马,他把这件事委托给自己的部下来做。(ModIfy)

public delegate void ModIfy(string sender);//这个是他声明的委托对不对(最上面)。

public event ModIfy ModIfyBookName;//这是一个事件对不?
Book b = new Book("人性的优点"); //这是实例化对不?
对象b调用事件 然后+=以后你可以自己试一试 会有提示叫你按enter键的 这就是掉用了 委托ModIfy 它有一个参数 传过去就可以了。。

就这样啦。不知道你懂了没有,要是没有懂 推荐你多看看委托和事件的文章哦!

用+=不只是绑定事件,还有一个意思:增加一个绑定事件,也就是说这个事件接口可以同时绑定更多的事件处理函数,触发事件时,按照绑定的顺序执行每个事件处理函数

委托那是人家的规定

这是一个委托