我已经做了一些reading on SO ,但没有找到我的问题的答案。
正如@Canavar 指出的in his answer有 2 种方式订阅事件:
声明式:
<asp:Button runat="server" ID="myButton" OnClick="myButton_Click" />
背后代码:
myButton.Click += new EventHandler(myButton_Click);
我以声明方式订阅事件,但很少在默认事件处理程序中使用“sender”和 EventArgs。大多数时候我最终都会从事件处理程序中调用一个方法。
使用委托(delegate)订阅事件会更好吗?
myButton.Click += delegate{DoStuff();};
让我知道我是否使事情变得过于复杂,并且应该坚持声明式事件订阅,并从默认事件处理程序调用我的 DoStuff() 方法。
最佳答案
您的处理程序需要匹配事件的指定参数。如果您使用委托(delegate),您将只是定义相同的东西。丢弃参数似乎是一种浪费,因为您将来可能因某种原因需要它们。我想不出任何不需要参数的充分理由。
事件处理程序已经是委托(delegate)了:)
关于asp.net - 在 ASP.NET 中订阅事件的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1480205/