Condividi tramite


Uso di postback con ReorderList (VB)

di Christian Wenz

Scarica il PDF

Il controllo ReorderList in AJAX Control Toolkit fornisce un elenco che può essere riordinato dall'utente tramite trascinamento e rilascio. Ogni volta che l'elenco viene riordinato, un postback informa il server della modifica.

Panoramica

Il ReorderList controllo in AJAX Control Toolkit fornisce un elenco che può essere riordinato dall'utente tramite trascinamento e rilascio. Ogni volta che l'elenco viene riordinato, un postback informa il server della modifica.

Passaggi

Esistono diverse origini dati possibili per il ReorderList controllo. Uno consiste nell'usare un XmlDataSource controllo:

<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>

Per associare questo XML a un ReorderList controllo e abilitare i postback, è necessario impostare gli attributi seguenti:

  • DataSourceID: ID dell'origine dati
  • SortOrderField: proprietà da ordinare
  • AllowReorder: Indica se consentire all'utente di riordinare gli elementi dell'elenco
  • PostBackOnReorder: Se creare un postback ogni volta che l'elenco viene riorganiato

Ecco il markup appropriato per il controllo:

<ajaxToolkit:ReorderList ID="rl1" runat="server" SortOrderField="char"
 AllowReorder="true"
 DataSourceID="XmlDataSource1" PostBackOnReorder="true">

All'interno del ReorderList controllo, i dati specifici dell'origine dati possono essere associati usando il Eval() metodo:

<DragHandleTemplate>
 <div class="DragHandleClass">
 </div>
 </DragHandleTemplate>
 <ItemTemplate>
 <div>
 <asp:Label ID="ItemLabel" Text='<%# Eval("description") %>' runat="server" />
 </div>
 </ItemTemplate>
</ajaxToolkit:ReorderList>

In una posizione arbitraria nella pagina, un'etichetta conterrà le informazioni quando si è verificato l'ultimo riordinamento:

<div>
 <asp:Label ID="lastUpdate" runat="server" />
</div>

Questa etichetta viene riempita con testo nel codice lato server, gestendo il postback:

<script runat="server">
 Sub Page_Load()
 If Page.IsPostBack Then
 lastUpdate.Text = "List last reordered at " & DateTime.Now.ToLongTimeString()
 End If
 End Sub
</script>

Infine, per attivare la funzionalità di ASP.NET AJAX e Control Toolkit, il ScriptManager controllo deve essere inserito nella pagina:

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

Ogni riordinazione attiva un postback

Ogni riordinazione attiva un postback (Fare clic per visualizzare l'immagine full-size)