Tra le caratteristiche che rendono interessante l'UpdateProgress c'è la sua capacità di saper gestire situazioni complesse: in questa lezione vediamo come realizzare la gestione dell'attesa di più pannelli asincroni, usando un solo indicatore di progresso.
Per fare ciò abbiamo bisogno di 3 UpdatePanel e di 1 solo UpdateProgess separato. Nei primi due pannelli avremo dei controlli che dovranno catturare informazioni per inviarle in modalita asincrona; nel terzo vogliamo visualizzare i risultati.
In questo caso l'UpdateProgress è esterno ai pannelli e senza alcuna specifica, è in grado di gestire entrambe le attese.
Inoltre per accedere asincronamente al controllo che dovrà esporre il risultato, dobbiamo far si che esso sia visibile dal codice C# o VB.net, quindi dobbiamo inserirlo per forza in un altro UpdatePanel.
Per ciò, per prima cosa costruiamo il layout che avrà il seguente schema logico: un primo UpdatePanel per l'inserimento del nome utente, un secondo per l'inserimento del cognome dell'utente ed infine un terzo per il risultato finale.
Listato 3. Struttura XHTML
|UpdatePanel|
|TextBox|
|Bottone|
|UpdatePanel|
|TextBox|
|Bottone|
|UpdateProgress|
|Attesa|
|UpdatePanel|
|Risultato|
Possiamo anche avere diversi UpdatePanel in un'unica pagina, tutti gestiti dal loro UpdateProgess. Infatti il controllo UpdateProgress espone una proprietà disponibile anche in modalità visuale, che si chiama AssociatedUpdatePanelID ed indica proprio su quale pannello il controllo deve agire.
Se vuoi aggiornamenti su .NET inserisci la tua email nel box qui sotto: