Платформа: ASP.NET 4.0ScriptManager не найден UpdatePanel, если загружена в BasePage
загружает ScriptManager из BaseClass для пользовательской обработки ТПСА и скриптов вставки в страницах и других пользовательских вещах.
Проблема в том, что когда я вставляю UpdatePanel, он не находит диспетчера сценариев, потому что updatepanel ищет его раньше.
Есть ли решение, которое не подразумевает удаление ScriptManager из basePage.
этот класс из нашего пользовательской утилиты DLL
public abstract class OurFrameworkBasePage:Page
{
protected override void OnInit(EventArgs e)
{
CurrentScriptManager = BuildScriptManager();
Form.Controls.AddAt(0, CurrentScriptManager);
base.OnInit(e);
}
private ScriptManager BuildScriptManager()
{
return new ScriptManager
{
//some scriptmanager settings
};
}
protected ScriptManager CurrentScriptManager { get; set; }
}
это сайт конкретного BasePage
public abstract class SiteBasePage:OurFrameworkBasePage
{
//some custom methods and utility for a specific site
}
страница default.aspx
<html>
<head runat="server"><title></title></head>
<body>
<form id="form1" runat="server">
<div>
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Literal runat="server" ID="ltr"></asp:Literal>
<asp:Button runat="server" OnClick="btnOkClick" ID="btnOk" Text="ok"/>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
</body>
</html>
Отлично! Я не думал о CreateControlCollection. в то же время я нашел другое решение, и я отправлю его для справки – giammin