例如我在ex1.aspx中有这个代码:
<form id="form1" runat="server">
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<!-- CODE1: some gridview or other asp elements here -->
</ContentTemplate>
</asp:updatepanel>
</form>
我将此代码放在其他页面ex2.aspx
中<form id="form1" runat="server">
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<!-- injection CODE1 to here in run time -->
</ContentTemplate>
</asp:updatepanel>
</form>
如何在运行时在ex2.aspx updatepanel中获取CODE1? 例如,当我点击一些asp:按钮“clickToLoadGridView”
修改 我试过了: - 用户控制ascx - 但问题是与表单runat服务器存在冲突。例如,如果我加载与数据库连接的gridview它将无法正常工作。我猜他从服务器返回时失去了连接。
我尝试加载gridview ascx的代码是:
using (Page objPage = new Page())
{
UserControl uControl = (UserControl)objPage.LoadControl("GridView.ascx");
objPage.Controls.Add(uControl);
using (StringWriter sWriter = new StringWriter())
{
HttpContext.Current.Server.Execute(objPage, sWriter, false);
return sWriter.ToString();
}
}
返回后,我将jquery附加到html的代码中。 然后我只能看到gridview的第一页。但是当网格视图是分页时,我点击第二个按钮页面,我得到页面“这个网页不可用”。