我在我的应用程序中使用Ajax Comboboxes。回发后,在page_load上动态重新创建控件。
在运行应用程序时,从ajax组合框中选择项目时,我一直收到此错误。
Microsoft JScript运行时错误:Sys.WebForms.PageRequestManagerServerErrorException:PreRender之后可能无法注册脚本控件。
我的Master_Page ......
<form runat="server">
<asp:ToolkitScriptManager ID="ToolkitScriptManager1"
runat="server" EnablePageMethods="True">
</asp:ToolkitScriptManager>
我的内容页面
Protected Overrides Sub OnPreRender(ByVal e As System.EventArgs)
MyBase.OnPreRender(e)
End Sub
我已根据其他帖子完成了上述方法,但仍无法解决问题。我一定要错过一些简单的东西,我希望如此。 如何解决这个错误?
答案 0 :(得分:1)
我发现如果您在Session或Cache中存储AJAX控件并尝试在Page_Load上重新创建它们,您将收到Script控件错误。仅供参考,在会话中存储标准asp.net控件并重新创建工作正常。
以下是一些有助于更好地了解问题的链接。 [链接1] http://forums.asp.net/t/1649461.aspx [链接2] http://www.telerik.com/community/forums/aspnet-ajax/docking/script-controls-may-not-be-registered-after-prerender.aspx
如果您没有使用ajax控件,可能还有其他原因,例如将脚本管理器添加到母版页。
答案 1 :(得分:0)
尝试使用Page_PreRender方法而不是覆盖OnPreRender方法