Quelle est la différence entre AsyncPostBackTrigger et PostBackTrigger?
Les contrôles à l'intérieur d'un UpdatePanel provoquent par défaut une mise à jour partielle de la page, les contrôles à l'extérieur provoquent une publication, en utilisant ces déclencheurs, il est possible de modifier ce comportement si nécessaire.
De http://seminaarit.codezone.fi/video/devdays-2007/track1/2/2-ASP-dotNET_AJAX_Extensions.ppt :
Voici un article de blog qui explique la différence:
Dans le modèle d'un panneau de mise à jour, il existe les options d'un AsyncPostBackTrigger ou d'un PostBackTrigger.
Par défaut, les contrôles en dehors d'un panneau de mise à jour déclenchent un retour synchrone normal. L'AsyncPostBackTrigger "connecte" ces contrôles pour déclencher un retour asynchrone. Inversement, les contrôles déclarés dans un panneau de mise à jour déclenchent par défaut un appel asynchrone. Le PostBackTrigger court-circuite cela et force le contrôle à effectuer un post synchrone.
1. AsyncPostBackTrigger
c'est celui qui applique le post asynchrone au dos de la page .., c'est-à-dire la manière AJAX. Les données seront traitées sans le post complet. Lorsque vous utilisez des fonctionnalités comme la connexion, vous pouvez utiliser ce.
Ex. Vous rencontrez deux dropDowns, à savoir les pays et les États. les états doivent être chargés lorsqu'un pays est sélectionné et il doit être modifié lors du changement de pays.
Vous pouvez utiliser AsyncPostBackTrigger dans ce scénario, qui remplira les états ddl sans retour complet.
2. PostBackTrigger
C'est celui qui ne suit pas les fonctionnalités AJAX, mais le post complet de retour comme d'habitude (comme sans utiliser UpdatePanel). Les situtions sont là où vous ne souhaitez pas appliquer le retour partiel (comme expliqué au point 1. ci-dessus).
Comme si vous aviez FileUpload Control
avec le UpdatePanel et lorsque vous le faites par AsyncPostBack, vous n'obtiendrez aucune valeur au serveur. Il nécessite Full PostBack. dans ce cas, vous devez utiliser ce déclencheur.
Supposons que Button1 se trouve dans votre panneau de mise à jour et Button2 en dehors du panneau de mise à jour. Maintenant, comprenons que les contrôles qui sont en dehors du panneau de mise à jour font un Asyncpostback et qui sont à l'intérieur créent un Syncpostback.
Donc, comme les deux boutons sont sur un formulaire Button1 dans le panneau de mise à jour et que bUtton2 est à l'extérieur. Donc, en passant, en donnant l'ID du Button2 et son nom d'événement au déclencheur Asyncpostback comme indiqué dans l'exemple, nous supposons qu'il va maintenant créer un syncpostback avec le panneau de mise à jour comme le Button1.