使用附加参数增强事件处理程序
事件处理程序经常需要访问标准事件参数之外的数据。 使用 lambda 表达式或匿名函数注入额外参数可以轻松解决此需求。
我们举个例子来说明一下:
<code class="language-csharp">private void setup(string extraData) { Object.assignHandler((sender) => evHandler(sender, extraData)); } public void evHandler(Object sender, string extraData) { // Access 'extraData' within the event handler. }</code>
这里,setup
函数接收 extraData
。 为了使其可供 evHandler
使用,lambda 表达式创建了一个匿名函数。此函数接受标准 sender
参数并将 extraData
传递给 evHandler
。 如图所示,现在可以在事件处理程序中访问 extraData
。
这种方法提供了一种干净高效的方法,将任何必要的数据传递给事件处理程序,从而提高了代码灵活性和可维护性。
以上是如何将额外参数传递给事件处理程序?的详细内容。更多信息请关注PHP中文网其他相关文章!