2012-08-22 74 views
1

我在不同的地方在我的页面有多个更新进度,但他们都有一个更新面板的id,因为我只使用一个更新面板我的问题是我如何让一个更新在更新完成时显示它的内容。使用一个更新面板的多个更新进度

这里是我的代码示例:

<asp:UpdatePanel ID="UpdatePanel2" runat="server"> 
     <ContentTemplate> 
       <asp:Label ID="platformLabel" runat="server" 
          Text=" <%$Resources:Resource,SelectPlatform %>"> 
       </asp:Label> 
       <asp:LinkButton ID="platformHyperLink" runat="server" 
           CssClass="platformElementHL" 
           CommandArgument='<%# Eval("PLATFORM_ID")%>' 
           OnClick="platformHyperLink_Click" 
           OnClientClick="ShowSearchButton();" /> 
       <asp:Label ID="PlatformNameLabel" runat="server" 
          Text='<%# Eval("PLATFORM_NAME")%>' > 
       </asp:Label> 
       <telerik:RadButton ID="findDevice" runat="server" 
            Text="<%$Resources:Resource,Search %>" 
            OnClientClicked="HideTootltip" 
            OnClick="findDevice_Click" 
            style="display:none"> 
       </telerik:RadButton> 
     <asp:UpdateProgress ID="updProgress1" 
         AssociatedUpdatePanelID="UpdatePanel" runat="server"> 
       <ProgressTemplate>   
       <img src="App_Themes/WebPortalTheme/images/HomePage/icon-loading- 
          animated.gif" width="20" height="20" alt="Progress" />   
       </ProgressTemplate> 
     </asp:UpdateProgress> 
     <asp:UpdateProgress ID="updProgress2" 
         AssociatedUpdatePanelID="UpdatePanel" runat="server"> 
       <ProgressTemplate>   
       <img src="App_Themes/WebPortalTheme/images/HomePage/icon-loading- 
          animated.gif" width="20" height="20" alt="Progress" />   
       </ProgressTemplate> 
     </asp:UpdateProgress> 
    </ContentTemplate> 
</asp:UpdatePanel> 

当我上的链接按钮点击updateProgress1应显示,当我在radButton点击updateprogress2应显示什么想法?

回答

2

您必须使用两个更新面板(一个用于链接按钮,另一个用于单选按钮),并将每个updateprogress与相应的更新关联关联。如果您需要更新整个页面,请使用一个全局更新面板,方法是适当地设置childastrigger选项。

<asp:UpdatePanel ID="UpdtGlobal" runat="server" ChildrenAsTriggers="true"> 
     <ContentTemplate> 
      <asp:Label ID="Label1" runat="server" Text=" <%$Resources:Resource,SelectPlatform %>" /> 
      <asp:UpdatePanel ID="UpdtLinkButton" runat="server" ChildrenAsTriggers="true"> 
       <ContentTemplate> 
        <asp:LinkButton ID="LinkButton1" runat="server" CssClass="platformElementHL" CommandArgument='<%# Eval("PLATFORM_ID")%>' 
         OnClick="platformHyperLink_Click" OnClientClick="ShowSearchButton();" /> 
       </ContentTemplate> 
      </asp:UpdatePanel> 
      <asp:Label ID="Label2" runat="server" Text='<%# Eval("PLATFORM_NAME")%>' /> 
      <asp:UpdatePanel ID="UpdtRadButton" runat="server" ChildrenAsTriggers="true"> 
       <ContentTemplate> 
        <telerik:radbutton id="findDevice" runat="server" text="<%$Resources:Resource,Search %>" 
         onclientclicked="HideTootltip" onclick="findDevice_Click" style="display: none" /> 
       </ContentTemplate> 
      </asp:UpdatePanel> 
      <asp:UpdateProgress ID="UpdateProgress1" AssociatedUpdatePanelID="UpdtLinkButton" 
       runat="server"> 
       <ProgressTemplate> 
        <img src="App_Themes/WebPortalTheme/images/HomePage/icon-loading-animated.gif" width="20" 
         height="20" alt="Progress" /> 
       </ProgressTemplate> 
      </asp:UpdateProgress> 
      <asp:UpdateProgress ID="UpdateProgress2" AssociatedUpdatePanelID="UpdtRadButton" 
       runat="server"> 
       <ProgressTemplate> 
        <img src="App_Themes/WebPortalTheme/images/HomePage/icon-loading-animated.gif" width="20" 
         height="20" alt="Progress" /> 
       </ProgressTemplate> 
      </asp:UpdateProgress> 
     </ContentTemplate> 
    </asp:UpdatePanel> 
+0

在我的情况下,我不能使用两个更新面板 – Sora

+0

然后,您可以使用一些JavaScript来禁用updateprogress,你不想激活... –