我有一个asp页面(.aspx)页面,还有一个asp:Panel。我使用Telerik库,但我认为这是无关紧要的。
由于文件大小和工作组织的原因,我现在需要将asp:Panel标签移动到主文件之外,转移到另一个独立的.aspx中。
我将aspx内容移动到一个新文件,以及.cs文件中的相关代码,与主要文件分开。
在主要的load_page上,通过构造函数实例化单独的面板 - 构造函数实例化面板中的每个控件,尤其是具有.Show()方法的控件。
每个成员都在新类中工作,但由于我是ASP的新手,我不知道如何将单独的aspx代码放在前一个文件中,因为当我调用myModalPopup.Show()时,我有唯一的影响页面重新加载
单独文件中的面板摘录:
<asp:Panel ID="panelId" runat="server">
<asp:HiddenField ID="control1" runat="server" />
<ajax:ModalPopupExtender ID="extId" runat="server" TargetControlID="control1">
</ajax:ModalPopupExtender>
//Html/Controls stuff
</asp:Panel>
myPanel.cs
protected EditPanel myPanel = new EditPanel();
public class EditPanel: System.Web.UI.Page
{
protected Panel myPanel;
protected HiddenField control1;
public AjaxControlToolkit.ModalPopupExtender extender;
//Other controls
public EditPanel()
{
extender = new AjaxControlToolkit.ModalPopupExtender();
control1 = new HiddenField();
//Other inits
}
}
在主页.cs:
protected void Page_Load(object sender, EventArgs e)
{
protected EditPanel editor = new EditPanel();
//... so on
}
在主要的page.aspx中,我尝试过(没有成功)
<asp:Panel ID="panelId" runat="server">
<!-- #Include virtual="~/path/EditPanel.aspx" -->
</asp:Panel>