Traduction▲
Cet article est la traduction la plus fidèle possible de l'article original: Using Postbacks with ReorderList
Vue générale▲
Le contrôle ReorderList de l'AJAX Control Toolkit permet de générer une liste qui peut être réorganisée par l'utilisateur via un glisser- déposer. A chaque fois qu'une liste est réorganisée, un PostBack informe le serveur des changements.
Etapes▲
Il y a plusieurs sources de données possibles pour le contrôle ReorderList. L'une d'entre elles est le contrôle XmlDataSource:
<
asp
:
XmlDataSource
ID
=
"XmlDataSource1"
runat
=
"server"
XPath
=
"acronym/letter"
>
<Data>
<acronym>
<letter
char
=
"A"
description
=
"Asynchronous"
/>
<letter
char
=
"J"
description
=
"JavaScript"
/>
<letter
char
=
"A"
description
=
"And"
/>
<letter
char
=
"X"
description
=
"XML"
/>
</acronym>
</Data>
</
asp
:
XmlDataSource>
Dans le but de binder ce XML au contrôle ReorderList et d'activer les postbacks, les attributs suivant doivent être définis:
- DataSourceID: l'ID de la source de données
- SortOrderField: la propriété sur laquelle s'appliquera le tri
- AllowReorder: Indique si l'utilisateur peut ou non réorganisé la liste
- PostBackOnReorder: Indique si un postback doit être déclenché ou non quand la liste est réorganisée.
Ci-dessous le code pour créer ce contrôle:
<ajaxToolkit:
ReorderList ID
=
"rl1"
runat
=
"server"
SortOrderField
=
"char"
AllowReorder
=
"true"
DataSourceID
=
"XmlDataSource1"
PostBackOnReorder
=
"true"
>
On ajoute également un label qui affichera l'heure de la dernière réorganisation de la liste:
Ce label est rempli côté serveur, à chaque postback:
<
script runat=
"server"
>
void
Page_Load
(
)
{
if
(
Page.
IsPostBack)
{
lastUpdate.
Text =
"List last reordered at "
+
DateTime.
Now.
ToLongTimeString
(
);
}
}
</
script>
Pour terminer, afin d'activer les fonctionnalités d'ASP.NET AJAX et du Control Toolkit, le contrôle ScriptManager doit être ajouté à la page
<asp:
ScriptManager ID
=
"asm"
runat
=
"server"
/>