【发布时间】:2011-08-18 14:39:23
【问题描述】:
我在开发控件时遇到了一个奇怪的问题。我已经为控件中的 Page.InitComplete 事件注册了一个处理程序,但该处理程序没有被执行。我需要在 InitComplete 事件上准确执行处理程序,因为我依赖于复杂的应用程序架构。
我的代码如下所示(这段代码放在我的控件类中):
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
this.Page.InitComplete += (sender, args) => OnInitComplete(args);
}
但是,从未输入过 OnInitComplete。
如果有可能,我想找到方法将我的处理程序注册到 Page.InitComplete 事件而不使用我自己的事件和奇怪的黑客。
除此之外,我很好奇这种行为的原因。
【问题讨论】:
-
首先我想我可以复制它,但没有。使用您提供的代码非常适合我。 (.NET 4.0)错误必须在其他地方。您能否提供更多代码以便我们重现它?
-
@atticae 更新了问题。很抱歉打扰您。
-
@danyloid 您能否将您的解决方案添加为下面的答案,以便您接受它?
-
@markc 我会在 8 小时后执行此操作,因为我现在没有足够的声誉来执行此操作。
标签: asp.net custom-server-controls