Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在预渲染之前,不能注册扩展程序控件_C#_Asp.net_Ajax_Ajaxcontroltoolkit - Fatal编程技术网

C# 在预渲染之前,不能注册扩展程序控件

C# 在预渲染之前,不能注册扩展程序控件,c#,asp.net,ajax,ajaxcontroltoolkit,C#,Asp.net,Ajax,Ajaxcontroltoolkit,以下代码位于Login.aspx文件中。以前,代码运行非常平稳。 但是,在添加ajax ModalPopup extender时发生了此错误 我试图在用户单击超链接“忘记密码”时创建一个弹出窗口 之前,我在另一个aspx文件中尝试了ajax日历和ballopopup,效果非常好。只有modalpopup扩展器有错误 Source Error: An unhandled exception was generated during the execution of the current we

以下代码位于Login.aspx文件中。以前,代码运行非常平稳。 但是,在添加ajax ModalPopup extender时发生了此错误

我试图在用户单击超链接“忘记密码”时创建一个弹出窗口

之前,我在另一个aspx文件中尝试了ajax日历和ballopopup,效果非常好。只有modalpopup扩展器有错误

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
堆栈跟踪:

[InvalidOperationException: Extender controls may not be registered before PreRender.]
   System.Web.UI.ScriptControlManager.RegisterExtenderControl(TExtenderControl extenderControl, Control targetControl) +442081
这是Login.aspx文件中的代码:

<asp:ScriptManager ID="ScriptManager2" runat="server"> </asp:ScriptManager>
<asp:HyperLink ID="HyperLink2" runat="server">Forget Password</asp:HyperLink>

<asp:ModalPopupExtender ID="HyperLink2_ModalPopupExtender" runat="server" 
        Enabled="True" TargetControlID="HyperLink2" 
        PopupControlID="Panel1">
</asp:ModalPopupExtender>

<asp:Panel ID="Panel1" runat="server"> Show pop Up here! </asp:Panel>

忘记密码
出现在这里!

我的代码怎么了?我将其与来自互联网的示例代码进行了比较,结果非常相似

导致这种情况的一个原因是您缺少一个

base.OnPreRender(e);
如果您已在页面中覆盖它