【发布时间】:2010-10-04 13:56:45
【问题描述】:
我创建了一个控件,其他开发人员可以在其中创建实例并使用。控件中有一个按钮单击。我如何允许开发人员在我的控件的某个部分插入他们自己的代码?我不确定在这种情况下是否或如何准确使用委托或事件。有人可以在下面的示例中提供帮助吗:
public class MyControl : CompositeControl
{
...
void btnSubmit_Click(object sender, EventArgs e)
{
//DO SOMETHING
if (success)
{
//CALL DEVELOPER'S LOGIC
}
}
}
在开发者代码中,当控件的按钮点击成功时,如何传入他们的逻辑?
protected override void CreateChildControls()
{
var ctlMyControl = new MyControl();
//ADD SuccessCode() TO ctlMyControl
//SO IT IS TRIGGERED ON SUCCESS
//MAYBE SOMETHING LIKE:
//ctlMyControl.SuccessEvent = SuccessCode()??
this.Control.Add(ctlMyControl);
}
protected void SuccessCode()
{
//DO SOMETHING
}
如何更新 MyControl 以允许这样做?
【问题讨论】:
标签: c# .net asp.net events delegates