Dopo aver esaminato in dettaglio gli Html Controls, che sono in pratica gli equivalenti lato server dei tag Html che già conosciamo, introduciamo un altro insieme di controlli:
- Button
- LinkButton
- ImageButton
- HyperLink
- Image
- Label
- Panel
- Table
- TextBox
- CheckBox
- RadioButton
- Calendar
Per inserire uno di questi elementi è sufficiente scrivere ad esempio
<asp:Table ...... />
Per inserire un elemento tabella.
Potrebbe stupirvi che molti dei Web Form Controls di cui parliamo hanno funzionalità molto simili a quelle di alcuni Html Controls. Quali sono le ragioni di questa duplicazione? Principalmente per riuscire ad inserire più velocemente gli elementi nella pagina anche senza conoscere i tag html, e per permetterne una gestione facilitata da parte di applicazioni che generano automaticamente il codice delle pagine.
Viste queste similitudini, non ci soffermeremo su ciascun elemento come abbiamo fatto per gli Html Controls, vedremo invece alcuni controlli che hanno delle funzionalità particolari.
<ASP:TextBox>
Questo elemento può essere utilizzato per creare sia un semplice campo di input di una riga sia per un campo password, sia per creare un elemento textarea. Creiamo un semplice campo di input con una lunghezza massima di 10 caratteri:
<asp:TextBox id="TextBox1" Text="Inserisci qui il testo"
MaxLength="10" runat="server" />
Se vogliamo che diventi un campo password specifichiamo il valore "Password" per la proprietà TextMode:
<asp:TextBox id="Pass1" MaxLength="10"
runat="server" TextMode="Password"/>
Analogamente, per farlo diventare un campo multilinea impostiamo la proprietà TextMode="MultiLine" e poi specifichiamo quanto deve essere larga e alta. Abbiamo due modi per fornire questi valori: le proprietà Width e Height che ci consentono di specificare il valore in pixel, e le proprietà Columns e Rows in cui specifichiamo il numero di caratteri e righe che deve avere la nostra TextArea. Ad esempio:
<asp:TextBox id="Area1" runat="server" TextMode="MultiLine" Width="120" Height="210"/>
Da notare che abbiamo tolto la Proprietà MaxLength perché non ha effetto in una textbox multilinea.
<ASP:Calendar>
Il controllo ASP:Calendar è uno dei più complessi e potenti controlli disponibili. Permette di visualizzare le date e interagire con esse muovendosi su un calendario estremamente personalizzabile.
che si ottiene semplicemente inserendo questo codice:
<asp:Calendar id="calendar1" runat="server"/>
Ed ecco una personalizzazione ottenuta impostando a piacere alcune
delle proprietà del Calendario.
Vediamo quindi un elenco delle proprietà della tabella che consentono
di modificarne l'aspetto esteriore.
BackColor | Imposta il colore di background. |
BorderColor | Imposta il colore border color of the Web control. |
BorderStyle | Imposta lo stile del bordo. |
BorderWidth | Imposta la larghezza del bordo. |
CellPadding | Imposta la quantità di spazio tra il contenuto della cella e il bordo della cella. |
CellSpacing | Imposta la quantità di spazio tra celle. |
DayNameFormat | Imposta il formato del nome dei giorni della settimana. |
FirstDayOfWeek | Imposta il giorno della settimana da visualizzare nella prima colonna. |
ForeColor | Imposta il colore del testo. |
Height | Imposta l'altezza del calendario. |
NextMonthText | Imposta il testo visualizzato per il bottone di passaggio al mese successivo. |
NextPrevFormat | Imposta il formato degli elementi di navigazione next e previous ai lati del titolo del calendario. |
PrevMonthText | Imposta il testo visualizzato per il bottone di passaggio al mese precedente. |
SelectMonthText | Imposta il testo visualizzato per il bottone di selezione del mese. |
SelectWeekText | Imposta il testo visualizzato per il bottone di selezione della settimana. |
ShowDayHeader | Consente di visualizzare o nascondere le iniziali dei giorni della settimana come intestazioni della colonna (Lun Mar etc.). |
ShowGridLines | Consente di scegliere se visualizzare la griglia. |
ShowNextPrevMonth | Consente di scegliere se visualizzare gli elementi di navigazione next e previous ai lati del titolo del calendario. |
ShowTitle | Consente di scegliere se visualizzare il titolo del calendario. |
Width | Imposta la larghezza in pixel del calendario. |
Torneremo sul controllo Calendar e su come interagire più avanti. Per adesso è importante prendere dimestichezza con l'aspetto esteriore della tabella.