【发布时间】:2010-11-19 16:15:15
【问题描述】:
我正在使用LoadControl(String) 动态创建多个UserControls,并希望订阅每个UserControls 的事件。
我的所有控件都继承了一个公共Interface,这需要一个公共Event的实现:
public interface IObjectProcessor
{
event EventHandler<ObjectProcessedEventArgs> ObjectProcessed;
}
所以我在页面加载事件中执行下一步:
protected void Page_Load()
{
switch(Request["type"])
{
case "user":
{
LoadControl("AddUser.ascx", delegate(object sender, ObjectProcessedEventArgs e)
{
// do something
});
break;
}
}
}
private void LoadControl(string path, Action<object, ObjectProcessedEventArgs> action)
{
var control = (IObjectProcessor)LoadControl(path)
control.ObjectProcessed // here!
}
如何为该活动订阅代表?
【问题讨论】:
标签: c# .net asp.net delegates anonymous-methods