我试图完全理解 WebForm 事件模型(不是页面生命周期,而是在 .aspx 或 .ascx 文件中以声明方式指定事件时如何连接事件。
以 Button 控件为例。它有一个 Click 事件,您可以在代码隐藏中连接到该事件,但它在 .aspx/.ascx 文件中有一个“OnClick”事件。
我使用了 .NET Reflector,并且 Button 控件有一个 protected OnClick 方法,但该方法不应由 .aspx/.ascx 分配。除非我遗漏了什么。
有人知道为什么要添加“On”前缀吗?
只是澄清一下:我理解命名约定是有效的。我想知道 .aspx/.ascx 中的“OnClick”如何转换为 .Click += new EventHandler(blahName); IE。如果我创建 ControlChanged EventHandler,是否需要执行任何特殊操作才能使 OnControlChanged 在 .aspx/.ascx 文件中有效显示?
最佳答案
这些存储对调用代码将使用事件连接的委托(delegate)的引用;为了区分事件本身和委托(delegate)。
关于asp.net - 为什么 WebControl 事件的前缀为 "On"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1004556/