2009-10-20 6 views

Répondre

5

Définissez UpdatePanel.UpdateMode Property sur Conditional.

<asp:UpdatePanel ID="UpdatePanel1" 
       UpdateMode="Conditional" 
       runat="server"> 
    ... 
</asp:UpdatePanel> 

Project Cool:

Panel de mise à jour des enfants rafraichit seulement ses contenu et ne marche pas actualiser celle de le panneau de mise à jour parent, sauf si le panneau en mode de mise à jour pour la mise à jour parent n'est pas défini sous condition

CodeClimber:

Lorsqu'il est réglé sur conditionnel, le UpdatePanel sera mis à jour que sur postback origine par des commandes à l'intérieur du panneau ou des déclencheurs spécifié. Donc, si vous avez plusieurs panneaux de mise à jour et que vous ne voulez pas mettre à jour tous pour être mis à jour chaque fois , vous devez définir le Mode de mise à jour sur Conditionnel.

6
<asp:UpdatePanel ID="UpdatePanel1" ChildrenAsTriggers="False" 
       UpdateMode="Conditional" 
       runat="server"> 

</asp:UpdatePanel> 
+0

Ceci est la vraie réponse – Fandango68

2

C'est ce que je fais

<asp:UpdatePanel ID="UpdatePanel1" ChildrenAsTriggers="False" 
       UpdateMode="Conditional" runat="server"> 
    ... 
    <asp:UpdatePanel ID="UpdatePanel2" ChildrenAsTriggers="False" 
       UpdateMode="Conditional" runat="server"> 
     ... 
    </asp:UpdatePanel> 
    ... 
</asp:UpdatePanel> 

Dans le code derrière après la liaison UpdatePanel2 Controls avec des données, communiquez avec UpdatePanel2.Update(); Ajax met à jour uniquement le balisage HTML dans "UpdatePanel2".

+0

Vous n'avez pas besoin de le gérer via le code-behind. Un seul ChildrenAsTriggers = false sur le premier UpdatePanel est suffisant. D'ailleurs, que faire si vous avez trois ou plus de panneaux imbriqués ?! – Fandango68