Master Pages, temi e controlli standard in ASP.NET 2.0

4 pagine in totale: <<Indietro 1 2 3 [4]

Il controllo FileUpload

In ASP.NET 1.x il caricamento di file sul server è possibile solamente tramite il controllo HtmlInputFile che corrisponde al tag <INPUT type="file">. In ASP.NET 2.0 viene fornito il nuovo controllo server FileUpload che rappresenta una valida alternativa al controllo HTML pre-esistente. Internamente il controllo utilizza la collection Request.Files di tipo HttpFileCollection e da essa recupera il file caricato sul server di tipo HttpPostedFile.

Il controllo HiddenField

Il controllo HiddenField viene renderizzato come un tag <INPUT type="hidden"> e la sua utilità è quella di memorizzare informazioni di stato (in alternativa, per esempio, al ViewState) all'atto di eseguire un post. HiddenField fornisce l'evento ValueChanged che viene scatenato quando il valore associato al controllo viene ritornato al server modificato.

Il controllo ImageMap

Il controllo ImageMap permette di trasformare una immagine in un menù di navigazione cliccabile, definendo tramite coordinate geometriche alcune aree sensibili (HotSpot) alle quali può essere associato un diverso comportamento all'atto del click. Principalmente i comportamenti possono essere due: 1) l'area funge da link ad un URL (modalità HotSpotMode.Navigate); 2) il click sull'area produce un postback (modalità HotSpotMode.PostBack). Le aree sensibili di un controllo ImageMap possono essere rettangolari, circolari o poligonali. In fase di rendering il controllo viene trasformato in una mappa client (tag <MAP>), per la quale sono definite le aree cliccabili tramite altrettanti tag <AREA>.

<asp:ImageMap Runat="server" ID="Sample" ImageUrl="Sample.jpg" Width="300" OnClick="Sample_Click" HotSpotMode="PostBack">
    <asp:RectangleHotSpot Top="0" Bottom="225" Left="0" Right="150" AlternateText="Area 1" PostBackValue="Area1"></asp:RectangleHotSpot>
    <asp:RectangleHotSpot Top="0" Bottom="225" Left="151" Right="300" AlternateText="Area 2" PostBackValue="Area2"></asp:RectangleHotSpot>
</asp:ImageMap>
I controlli MultiView e View

Il nuovo controllo MultiView definisce un insieme di viste rappresentate da una collection di tipo ViewCollection. Di queste viste solamente una viene riconosciuta come attiva per il controllo e viene renderizzata sul client. Il controllo ingloba tutti i meccanismi per poter commutare da una vista ad un'altra, grazie alla proprietà ActiveViewIndex e all'evento SetActiveView. Le viste sono di tipo View e anch'esse sono nuovi controlli web introdotti con la nuova versione del Framework.

<asp:MultiView Runat="server" ID="Sample">
    <asp:View Runat="Server" ID="View1">...</asp:View>
    <asp:View Runat="Server" ID="View2">...</asp:View>
    <asp:View Runat="Server" ID="View3">...</asp:View>
</asp:MultiView>
Il controllo Wizard

Il controllo Wizard permette di costruire una sequenza di schermate da mostrare in successione all'utente finale. In realtà il Wizard è un controllo composito che al suo interno utilizza un controllo MultiView per mostrare i vari passi della sequenza (che quindi non sono altro che controlli View in quanto WizardStepBase deriva dal tipo View). Il controllo mette a disposizione i pulsanti di avanzamento (pulsanti Avanti, Indietro, Fine, Annulla) e sfrutta eventi lato server per gestire la navigazione ogni volta che l'utente decide di cambiare schermata. E' possibile navigare sia in modo lineare, sia in modo casuale, saltando da un passo ad un altro.

<asp:Wizard Runat="server" ID="Sample" SideBarEnabled="True" ActiveStepIndex="0">
    <WizardSteps>
        <asp:WizardStep Runat="server" Title="Primo passo">Primo passo</asp:WizardStep>
        <asp:WizardStep Runat="server" Title="Secondo passo">Secondo passo</asp:WizardStep>
        <asp:WizardStep Runat="server" Title="Terzo passo">Terzo passo</asp:WizardStep>
    </WizardSteps>
</asp:Wizard>

L'applicazione di esempio

L'applicazione di esempio allegata all'articolo rappresenta un esempio concreto di come funzionano i temi e le Master Pages nella nuova versione di ASP.NET.

L'applicazione comprende due pagine ASPX (Default.aspx e Team.aspx) basate sulla Master Page Template.master e ben quattro temi basati sui colori delle principali squadre italiane di calcio (n.d.a. il tema di default è un omaggio alla mia squadra del cuore). E' possibile in ogni momento cambiare tema utilizzando una combo posta sulla sinistra nell'ambito della pagina.

Il menù basato sul nuovo controllo TreeView permette di visualizzare l'elenco delle squadre di calcio per le quali è disponibile la pagina di dettaglio. In queste pagine i giocatori sono elencati tramite il nuovo controllo BulletedList.

Sfruttando i meccanismi del Theming di ASP.NET 2.0, è possibile personalizzare non solo i colori e, in generale, gli stili, ma anche le immagini (esempio: il logo in alto a sinistra cambia in base al tema selezionato) e le caratteristiche dei vari controlli (esempio: gli elenchi puntati nelle pagine di dettaglio vengono rappresentati in modo diverso a seconda del tema selezionato).

Conclusioni

Anche se in ASP.NET 1.x è possibile riprodurre in modo più o meno immediato molto di quanto è stato illustrato in questo articolo, la nuova versione di ASP.NET mette in condizione tutti gli sviluppatori web di poter usufruire in modo diretto e senza sforzo di meccanismi nuovi senza dover scrivere una linea di codice. Del resto molti degli strumenti e dei meccanismi proposti in ASP.NET 2.0 scaturiscono da esigenze evidenziate dalle lacune e dai limiti presenti nelle versioni precedenti. Per questo motivo le nuove funzionalità introdotte in ASP.NET 2.0 rappresentano ancor più che in passato un innegabile vantaggio in termini di produttività ed efficacia. Sta a ciascun sviluppatore web saper cogliere la palla al balzo!

Tutti gli articoli dello speciale su ASP.NET 2.0

4 pagine in totale: <<Indietro 1 2 3 [4]

Attenzione: Questo articolo contiene un allegato

Contenuti dell'articolo

Commenti
Dai un voto a questo articolo, ci aiuterà a migliorare il nostro sito (1 è il voto minimo, 5 il massimo).

Per procedere al rating dell'articolo devi essere autenticato.

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.


TUTORIALS
TOP TEN ARTICOLI
NOTIFICHE

Iscriviti alla nostra newsletter nuoviarticoli per ricevere e-mail le notifiche!

Indirizzo e-mail:
PROVIDER ASP.NET 2.0

Seleziona il database per avere il web.config pronto per Membership, Roles e Profile API.



IN EVIDENZA
MISC