2012-03-08 117 views
0

我有一個使用AJAX TabContainer的網站,並有幾個選項卡面板。每個標籤面板由一個客戶用戶控件組成,並帶有許多控件。我需要能夠在執行服務器端按鈕單擊事件時設置活動選項卡。我將如何去從後面的自定義控件C#代碼訪問TabContainer?爲AJAX選項卡控件設置活動選項卡

我的標記的結構是這樣的:

<cc1:TabContainer ID="TabRoot" runat="server" Width="100%" CssClass="ajax__tab_yuitabview-theme" onActiveTabChanged="TabRoot_ActiveTabChanged" 
    OnClientActiveTabChanged="SetIndex" ActiveTabIndex="0" AutoPostBack="True"> 
     <cc1:TabPanel ID="TabPatientRoot" runat="server" HeaderText="Patient"> 
     <ContentTemplate> 
       <custom:Patient ID="PatientInfo" runat="server" Visible="False"></custom:Patient> 
     </ContentTemplate> 
     </cc1:TabPanel> 
</cc1:TabContainer> 

這是必要的,在服務器端代碼執行的標籤面板之前,一個保存數據的功能,因爲每當活動標籤改變它加載信息的新選擇改變標籤面板,從而失去了以前標籤面板上未保存的任何信息。

我該如何完成執行服務器端SaveData功能,然後有權訪問TabRoot來更改活動選項卡?目前,我正在使用JavaScript函數(在OnClientClick中用於保存按鈕)來設置活動選項卡,但它在服務器端SaveData函數之前正在執行。這對於IE9用戶來說似乎只是一個問題。

回答

1

嘗試這樣,並參考這個例子Ajax Control toolkit

TabRoot.ActiveTabIndex = 0; // set your active tab index to display. 
+0

我無法訪問後面的自定義控件C#代碼上的RootTab控件。 – Encryption 2012-03-08 17:59:19

0

嘗試設置ActiveIndex標籤的您的按鈕回傳事件中。

+0

我無法訪問後面的自定義控件C#代碼上的RootTab控件。 – Encryption 2012-03-08 17:59:12

相關問題