Modification d'animations côté serveur

| Christian Wenz | Jérôme Lambert (traducteur) |

Le contrôle Animation de l'ASP.NET AJAX Control toolkit n'est pas seulement un contrôle mais un framework pour ajouter des animations à un contrôle. Les animations peuvent aussi être modifiées côté serveur.

- Titre : Modification d'animations côté serveur

- Auteurs : Christian Wenz, Jérôme Lambert (traducteur)

- Parution : 16 mai 2009

- Licence : Copyright ® 2009 Equipe Dotnet. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- Traduction

- Introduction

- Etapes

Traduction

Cet article est la traduction la plus fidèle possible de l'article original : Modifying Animations From The Server Side

Introduction

Le contrôle Animation de l'ASP.NET AJAX Control toolkit n'est pas seulement un contrôle mais un framework pour ajouter des animations à un contrôle. Les animations peuvent aussi être modifiées côté serveur.

Etapes

Pour commencer, il faut inclure le ScriptManager dans la page ; l'ASP.NET AJAX library est ensuite chargé, rendant possible l'utilisation du Control Toolkit :

<asp:ScriptManager ID="asm" runat="server" />

L'animation s'appliquera à un panel contenant du texte et qui ressemble au bout de code suivant :

<asp:Panel ID="panelShadow" runat="server" CssClass="panelClass">
ASP.NET AJAX is a free framework for quickly creating a new generation of more efficient, more interactive and highly-personalized Web experiences that work across all the most popular browsers.
<br />
ASP.NET AJAX is a free framework for quickly creating a new generation of more efficient, more interactive and highly-personalized Web experiences that work across all the most popular browsers.
<br />
ASP.NET AJAX is a free framework for quickly creating a new generation of more efficient, more interactive and highly-personalized Web experiences that work across all the most popular browsers.
<br />
</asp:Panel>

Dans la classe CSS associée au panel, définissez une belle couleur et donnez une largeur fixe au panel :

<style type="text/css">
.panelClass
{
background-color: lime;
width: 300px;
}
</style>

Le reste du code s'exécute côté serveur et sans utiliser de balisage ; à la place, le code crée le contrôle AnimationExtender :

<script runat="server">
void Page_Load()
{
AjaxControlToolkit.AnimationExtender ae = new AjaxControlToolkit.AnimationExtender();
ae.TargetControlID = "Panel1";

Par contre, le Control Toolkit ne fournit actuellement pas un accès à une API pour créer les animations individuelles. Il est cependant possible d'utiliser la propriété AnimationExtender pour renseigner le balisage XML utilisé lorsqu'on assigne les animations de manières déclaratives (avec les balises). Pour créer cet XML - qui doit contenir l'élément <Animations> - vous pourriez utiliser le support XML du .NET Framework ou bien utiliser le code suivant renseignant simplement une chaîne de caractères :

ae.Animations = "<OnLoad><Parallel><FadeOut Duration=\"1.5\"
Fps=\"24\" /><Resize Width=\"1000\" Height=\"150\"
Unit=\"px\" /></Parallel></OnLoad>";

Au final, ajoutez le contrôle AnimationExtender à la page courante, à l'intérieur de l'élément <form runat="server">, en prenant soin de vérifier que l'animation est bien inclue et qu'elle fonctionne correctement :

form1.Controls.Add(ae);
}
</script>

L'animation est créée côté serveur avec du code C#/VB.