我是C#的新手,当我在asp中创建自定义控件时,在我脑海中创建了一个问题:为什么覆盖函数没有sender
对象?
例如:
protected override void OnRowCreated(GridViewRowEventArgs e)
但是当我们在代码中使用此事件时,会有一个名为" sender"
的对象类型的变量答案 0 :(得分:5)
这些以 On 开头的方法不需要接收已提出事件的 ,因为它们是发件人的一部分,this
是发件人(声明整个事件的类的实例)。
当有人订阅某个特定事件时,可能会说它可能是另一个类,你可能需要知道是谁提出了这个事件。
答案 1 :(得分:0)
具有protected override void On*(*EventArgs e)
等签名的方法允许派生类型引发父类中定义的事件。由于这些是为自己的实例引发事件的方法,因此他们需要使用this
来获取发送方对象。