簡體   English   中英

在tabcontainer中啟用tabpanel

[英]Enable tabpanel in tabcontainer

我有一個帶有兩個標簽的tabcontainer。 第一個選項卡包含一個文本框,而第二個選項卡包含一個面板。

我希望在第一頁加載時禁用第二個選項卡,並且我希望用戶在tab1的文本框中輸入一個輸入后立即啟用它。 當再次清空tab1中的文本框時,應再次禁用第二個選項卡。

我嘗試了以下代碼,但是無論如何,第二個選項卡仍然處於禁用狀態。 任何幫助,將不勝感激。 謝謝!

aspx

<asp:TabContainer ID="TabContainer1" runat="server" ActiveTabIndex="4" HeaderText=""
    Height="578px" Width="900px" TabStripPlacement="Top" ScrollBars="None" UseVerticalStripPlacement="false"
    VerticalStripWidth="120px" BackColor="White" BorderColor="White" Style="margin-right: 84px">
    <asp:TabPanel ID="TabPanel1" runat="server">
        <HeaderTemplate>
            General
        </HeaderTemplate>
        <ContentTemplate>
             <asp:UpdatePanel ID="TestUpdatePanel" runat="server">
                <ContentTemplate>
                        <table style="height: 247px; width: 100%;">
                            <tr>
                                  <td>
                                       <asp:TextBox ID="HorizonTextBox" runat="server" OnTextChanged="HorizonTextBox_TextChanged"
                                                    AutoPostBack="True"></asp:TextBox>
                                  </td>
                            </tr>
                         </table>
                </ContentTemplate>
             </asp:UpdatePanel>
        <ContentTemplate>
     </asp:TabPanel>
     <asp:TabPanel ID="TabPanel2" runat="server">
         <HeaderTemplate>
            Dashboard
        </HeaderTemplate>
        <ContentTemplate>
            <asp:Button ID="RunSimulationButton" runat="server" Text="Run Simulation" OnClick="RunSimulationButton_OnClick" />
            <br />
            <br />
            <asp:Panel ID="PlotPanel" runat="server">
            </asp:Panel>
        </ContentTemplate>
    </asp:TabPanel>

aspx.cs

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            TabContainer1.ActiveTabIndex = 0;

            TabPanel2.Enabled = false;

        }
    }

    protected void HorizonTextBox_TextChanged(object sender, EventArgs e)
    {
        if(HorizonTextBox.Text != "")
        {
              TabPanel2.Enabled = true;
        }
    }

您可能需要將整個選項卡容器包含在updatepanel中,以允許更新面板啟用/禁用子控件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM