请教一个C#定义Event的问题请问public event behindClickEventHandler behindClick;和public event behindClickEventHandler behindClick{add{Events.AddHandler(MyObj,value);}remove{Events.RemoveHandler(MyObj,value);}}二者的区别是什么?还

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 19:14:32
请教一个C#定义Event的问题请问public event behindClickEventHandler behindClick;和public event behindClickEventHandler behindClick{add{Events.AddHandler(MyObj,value);}remove{Events.RemoveHandler(MyObj,value);}}二者的区别是什么?还

请教一个C#定义Event的问题请问public event behindClickEventHandler behindClick;和public event behindClickEventHandler behindClick{add{Events.AddHandler(MyObj,value);}remove{Events.RemoveHandler(MyObj,value);}}二者的区别是什么?还
请教一个C#定义Event的问题
请问
public event behindClickEventHandler behindClick;

public event behindClickEventHandler behindClick
{
add
{
Events.AddHandler(MyObj,value);
}
remove
{
Events.RemoveHandler(MyObj,value);
}
}
二者的区别是什么?
还想问一下,为什么使用后面那种方法时.
behindClick!=null时会报错.它是否定义了behindClick事件,还是只是在定义add和remove方法?

请教一个C#定义Event的问题请问public event behindClickEventHandler behindClick;和public event behindClickEventHandler behindClick{add{Events.AddHandler(MyObj,value);}remove{Events.RemoveHandler(MyObj,value);}}二者的区别是什么?还
前一个是定义了一个behindClickEventHandler,这样做的话默认实现了下面的add,remove之类代码,即默认的添加,删除事件处理器逻辑.
后面一个是定义了一个behindClickEventHandler并且定义了添加删除事件处理器的代码.
如果向第二个那样写的话,可以简写成第一个的形式,而不需要手动写add,remove.不过,当你需要在添加或删除事件的时候做一些其他的操作(比如记录日志)就需要手动写add和remove了.以下的例子是在添加,删除事件处理器的时候记录日志的代码:
public event behindClickEventHandler behindClick
{
add
{
Console.WriteLine("ADD EVENT");
Events.AddHandler(MyObj, value);
}
remove
{
Console.WriteLine("REMOVE EVENT");
Events.RemoveHandler(MyObj, value);
}
}
Ps: 这里只是定义了添加和删除eventhandler的方法而没有初始化behindClick本身.你可以简单的用property的定义来类比event的定义.

请教一个C#定义Event的问题请问public event behindClickEventHandler behindClick;和public event behindClickEventHandler behindClick{add{Events.AddHandler(MyObj,value);}remove{Events.RemoveHandler(MyObj,value);}}二者的区别是什么?还 C# 二进制 变量怎么定义我需要一个4位的二进制 表示 四个方向 有没有人 请问 在C#里边怎么定义 请教关于一个汉字读音的问题杜甫中的“甫”字应该读什么音?是Fu还是pu? C# dictionary排序问题我定义了一个static Dictionary nameProcess = new Dictionary();其中pProcess是一个类.这个类里有几个属性.我想按照某个属性给这个Dictionary的值排序,请问有什么简便的方法没 c#怎么定义一个6*6的地图 c#中如何定义一个公共的类啊. C#语言的类定义 高数 一个用定积分定义求极限的问题.请教各位,谢谢. C#概念问题10、错误类型11、委托和事件的定义: 请问一个数学问题“极限的定义”是什么? 回文数的C#问题. c#中定义扩展函数的问题.我在类库中定义了扩展函数,然后引用到主项目中时发现访问不到那个扩展函数,请问漏掉了什么步骤 C#中构造函数的定义? 请问海棉密度的问题海棉的密度怎么计算?PU-80代表什? C#判断事件问题C#在发生一个事件的时候,如何判断上一个发生的事件是什么呢 c#定义一个类,使用三角形的三条边计算出三角形的面积. C#编程:定义一个复数类,实现复数的简单加法运算,并能显示结果. 请教一下c#的type类是什么?请问type是什么东东?请不要给我官方的解释.