我正在尝试编写一个也将处理点击事件的通用方法,并且我希望允许用户将他自己的方法作为点击事件传递。 像这样:
public static void BuildPaging(
Control pagingControl, short currentPage, short totalPages, ???)
{
for (int i = 0; i < totalPages; i++)
{
LinkButton pageLink = new LinkButton();
...
pageLink.Click += ???;
pagingControl.Controls.Add(paheLink);
}
}
我知道这是可能的,但我不记得怎么做...
最佳答案
只需使用事件处理程序的类型作为参数类型:
public static void BuildPaging(Control pagingControl
, short currentPage
, short totalPages
, EventHandler eh // <- this one
)
{
for (int i = 0; i < totalPages; i++)
{
LinkButton pageLink = new LinkButton();
...
pageLink.Click += eh;
pagingControl.Controls.Add(paheLink);
}
}
注意:完成后不要忘记删除事件处理程序,否则可能会泄漏内存!
关于c# - 如何将 EventHandler 作为方法参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27900277/