asp.net 无法在 TabContainer 中创建 TabPanel
can't create TabPanels in TabContainer in asp.net
我有 TabContainer,我正在向其动态添加 TabPanel。
问题是,如果我没有至少一个硬编码 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>
这是添加的 TabPanel:
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,所有动态 TabPanel 都将变得不可见。
真奇怪。
问题是 TabPanel 的 none 处于活动状态。
当您动态创建 TabPanel 时,您需要将其中之一作为 Active 放在 TabContainer 中。
我有 TabContainer,我正在向其动态添加 TabPanel。
问题是,如果我没有至少一个硬编码 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>
这是添加的 TabPanel:
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,所有动态 TabPanel 都将变得不可见。
真奇怪。
问题是 TabPanel 的 none 处于活动状态。
当您动态创建 TabPanel 时,您需要将其中之一作为 Active 放在 TabContainer 中。