我有TabContainer,我正在动态添加TabPanels。
问题是,如果我没有至少一个硬编码的TabPanel,我看不到所有的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>
这是TabPanels添加:
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);
}
如果删除Hard Coded TabPanel,则所有动态TabPanel都将无法访问。
非常奇怪。
答案 0 :(得分:0)
问题是TabPanels都没有激活。
当您动态创建TabPanel时,您需要将其中一个设置为TabContainer中的Active。