我正在使用AspxPagecontrol创建一个动态选项卡。我有一个UserControl
页面。我根据Id动态加载。但是,当我尝试使用不同的ID加载我的UserControl
页面时,另一个页面显示为空。
如果你帮忙,我会很高兴的。 干得好。
protected void btnNewTab_Click(object sender, EventArgs e)
{
string Id = (((ASPxButton)sender).CommandArgument);
PageList.Add(Id);
if (Session["PageList"] == null)
{
Session.Add("PageList", PageList);
TabAdd(Id);
}
else
{
if (((List<string>)Session["PageList"]).Contains(Id))
{
foreach (TabPage tab in ASPxPageControl1.TabPages)
{
if (tab.Name == "Page" + Id)
{
ASPxPageControl1.ActiveTabIndex = tab.Index;
break;
}
}
}
else
{
((List<string>)Session["PageList"]).Add(Id);
TabAdd(Id);
}
}
}
void TabAdd(string Id)
{
TabPage newPage = new TabPage("Page" + Id, "Page" + Id);
ASPxPageControl1.TabPages.Add(newPage);
for (int i = 0; i < ASPxPageControl1.TabPages.Count; i++)
{
IssuesDetails cc = (IssuesDetails)Page.LoadControl("~/IssuesDetails.ascx");
cc.matchID = Id;
cc.ID = Id;
ASPxPageControl1.TabPages[ASPxPageControl1.TabPages.Count - 1].Controls.Add(cc);
}
ASPxPageControl1.ActiveTabIndex = ASPxPageControl1.TabPages.Count - 1;
}
<dx:ASPxButton ID="btnYeniTab" runat="server" CommandArgument="1" Text="Yeni Tab1" OnClick="btnNewTab_Click"></dx:ASPxButton>
<dx:ASPxButton ID="btnYeniTab2" runat="server" CommandArgument="2" Text="Yeni Tab2" OnClick="btnNewTab_Click"></dx:ASPxButton>
<dx:ASPxButton ID="btnYeniTab3" runat="server" CommandArgument="3" Text="Yeni Tab3" OnClick="btnNewTab_Click"></dx:ASPxButton>
<dx:ASPxPageControl ID="ASPxPageControl1" runat="server" ViewStateMode="Enabled" ActiveTabIndex="1" Height="400px"
Width="100%" EnableCallBacks="true">
<TabPages >
<dx:TabPage Name="AnaTab">
<ContentCollection >
<dx:ContentControl runat="server">
</dx:ContentControl>
</ContentCollection>
</dx:TabPage>
</TabPages>
</dx:ASPxPageControl>