我有TabContainer,我正在动态添加TabPanel。
问题是,如果我没有至少一个硬编码的选项卡面板,我就看不到所有选项卡面板。
这是 TabContainer:
<cc1:TabContainer ID="TabContainer1" runat="server" AutoPostBack="true" >
<cc1:TabPanel ID="TabPanel0" runat="server" HeaderText="TabPanel1" >
<ContentTemplate>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="Button" />
</ContentTemplate>
</cc1:TabPanel>
</cc1:TabContainer>
这是选项卡面板添加:
for (int i = 0; i < WorkOrderTabs.AllTexts.Count; i++)
{
TabPanel tab = new TabPanel();
AttributesAndLabels AAL = new AttributesAndLabels(1, i);
tab.ID = "tabPanel" + (i+1);
tab.HeaderText = AAL.AllTexts[0];
tab.Visible = true;
Control pdage = Page.LoadControl(FH.SubUserControlersWorkOrderPath + WorkOrderTabs.AllTexts[i]);
TabContainer1.Tabs.Add(tab);
TabContainer1.Tabs[i+1].Controls.Add(pdage);
}
如果我删除硬编码选项卡面板,所有动态选项卡面板都将变得不可见。
真的很奇怪。
问题是没有一个选项卡面板处于活动状态。
动态创建 TabPanel 时,需要将其中一个作为活动状态放入 TabContainer 中。