Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Validazione per gruppi

Validare insiemi indipendenti di controlli ASP.NET
Validare insiemi indipendenti di controlli ASP.NET
Link copiato negli appunti

In ASP.NET 2.0 si possono raggruppare insiemi di controlli da validare. Ogni gruppo viene validato indipendentemente dagli altri. Questa è grossa novità in quanto nella precedente versione di ASP.NET si poteva validare solo una pagina per volta. Per approfondire questa nuova caratteristica, realizziamo una pagina con 2 componenti "Panel", contenenti ciascuno una TextBox ed un Button.

Con il VWD, apriamo un nuovo progetto e chiamiamolo "Lezione8". In Design view della Default.aspx mettiamo il primo pannello, "Panel1", con il logo di Google, la casella di testo ed il bottone. Subito sotto il primo, posizioniamo il secondo pannello, "Panel2", che contiene solo la casella di testo ed il bottone.

Nel Panel2 inseriamo dei codici ISBN. La pagina dovrebbe svolgere alcuni compiti che non precisiamo per i nostri scopi (ad esempio potrebbe visualizzare i dettagli di un libro).

Associamo alla casella di testo per l'ISBN un RequiredFieldValidator trascinando il controllo dal gruppo di controlli Validation all'area di lavoro, sempre in Design view. Nella finestra "Proprietà" del RequiredFieldValidator, impostiamo il controllo da validare e scriviamo il messaggio di errore da visualizzare.

Ora possiamo dividere i controlli in 2 gruppi di validazione. Cominciamo col definire 2 gruppi, SearchGroup e BooksGroup e su ogni controllo impostiamo il campo ValidationGroup, in questo modo assegnamo ciascun controllo ad uno dei 2 gruppi. I controlli in cui non modifichiamo il ValidationGroup, appartengono al default group e si comportano come nella precedente versione di ASP.NET.

Passiamo in modalitù 'Origine' (Source view) ed osserviamo il codice prodotto:

Figura 1. Pannelli con gruppi di validazione separati
Gruppi di validazione separati - Click per ingrandire

In definitiva abbiamo associato a RequiredFieldValidator1 ed a ButtonISBN il gruppo di validazione "BooksGroup" ed a ButtonCerca il gruppo "SearchGroup".

Prima di provare la nostra applicazione, sistemiamo il campo di ricerca di Google in modo che funzioni. Con un doppio click su ButtonCerca in Design view, apriamo la pagina del codice ed implementiamo il relativo gestore degli eventi come illustrato in figura:

Figura 2. Codice per l'evento Click su ButtonCerca
Codice per l'evento Click su ButtonCerca

Testiamo ora la nostra pagina con F5.

Figura 3. L'applicazione in funzione
L'applicazione in funzione

Inseriamo un nome nel campo di ricerca, ad esempio "pippo", otteniamo:

Figura 4. Test della ricerca
Test della ricerca

Se clicchiamo su 'Cerca ISBN' senza inserire nulla nella casella di ricerca, appare il messaggio d'errore. È corretto, perchè si attiva il ValidationGroup per cui è settato il validatore:

Figura 5. Test del validatore
Test del validatore

In ASP.NET 2.0, i controlli di validazione supportano la proprietà SetFocusOnError in modo da spostare il focus nel controllo che è stato validato in caso di non validazione.

È possibile scaricare il sorgente dell'esempio della presente lezione da qui.

Ti consigliamo anche