2013-08-23 37 views
1

我正在使用TabPanel顯示在線用戶的網頁上工作,我希望每隔X秒鐘更新一次。這部分工作;但是,TabContainer中的所有其他選項卡也會更新,這是我不想要的。這裏是在線用戶標籤的代碼Asp tabpanel更新所有標籤頁

<cc1:TabPanel runat="server" HeaderText="Online Users" ID="TabPanel1"> 

    <ContentTemplate>   
     <div> 
      <div style="position:relative; text-align:left; width:650px; top: 0px; left: 0px;"> 
       <asp:Label ID="lblUpdate" runat="server" Text="This page refreshed automatically every 10 seconds, or press the update button to the right"></asp:Label> 
      </div> 
     </div> 

     <asp:Timer runat="server" ID="timer1" Interval="10000"></asp:Timer> 
     <asp:Timer runat="server" ID="timer2" Interval="9000"></asp:Timer> 

     <asp:UpdatePanel runat="server" ID="updateOnlineUsers" UpdateMode="Conditional"> 

      <Triggers> 
       <asp:AsyncPostBackTrigger ControlID="timer1" /> 
       <asp:AsyncPostBackTrigger ControlID="timer2" /> 
      </Triggers> 

      <ContentTemplate> 
       <div style="text-align:right; position:relative; top:-20px"> 
        <asp:Image style="position:relative; display:none; z-index:1" ID="Image1" runat="server" ImageUrl="../images/reload.gif" /> 
        <asp:ImageButton ID="ImageButton1" style="position:relative; z-index:2" runat="server" ImageUrl="../images/reload5.png" /> 
       </div>     
       <div>      
        <asp:Label ID="lbluserCount" runat="server"></asp:Label> 
       </div> 
       <div> 
        <asp:Label ID="lblOfflineUsers" runat="server"></asp:Label> 
       </div> 
       <div> 
        <asp:Label runat="server" ID="lblOnlineUsers">Hi Everybody</asp:Label> 
       </div>      
      </ContentTemplate> 
     </asp:UpdatePanel>  
    </ContentTemplate> 
    </cc1:TabPanel> 

在此先感謝!

回答

0

將定時器移出TabPanel。之後,您可能需要手動從代碼隱藏中將定時器註冊爲AsyncPostbackTriggers。

+0

感謝您的快速回復。我在Scriptmanager結束標記的末尾和TabContainer的開始之間移動了我的定時器。我不完全清楚你的意思是把我的定時器註冊爲代碼隱藏的AsyncPostbackTriggers。在我的aspx文件或我的aspx.vb文件? – Ferbla