Validazione a gruppi di composite control con ASP.NET 2.0

di Cristian Civera, in ASP.NET 2.0, Validator Controls,

I controlli composti sono contenitori che forniscono funzionalità base mediante proprietà di configurazione, controlli predefiniti o templates per la personalizzazione del layout.
Di questa tipologia fanno parte Login, ChangePassword, PasswordRecovery e CreateUserWizard, che dispongono di textbox per l'immissione di dati e di validatori per controllarli.
I validatori nella versione 2.0 di ASP.NET hanno la possibilità di essere raggruppati in moda da raggruppare gli elementi da verificare all'interno della pagina.
Questo è possibile mediante la proprietà BaseValidator.ValidationGroup che deve combaciare con il nome del ValidationGroup impostato su componenti che possono scatenare la validazione, quali Button, ImageButton, LinkButton, TextBox, CheckBox e RadioButton.

Il gruppo di default dei validatori e dei controlli è una stringa vuota (String.Empty). I controlli composti indicati precedentemente, invece, usano lo UniqueID (l'ID concatenato con gli ID dei padri separato da : o $).
Poniamo di aver un controllo Login di nome TestLogin:

<asp:Login ID="TestLogin" runat="server" />

Per scatenare la validazione da un controllo esterno indicheremo come ValidationGroup l'ID del Login:

<asp:Button Text="Login 2" CausesValidation="true" ValidationGroup="TestLogin" runat="server" />

Faremo lo stesso se vogliamo utilizzare il ValidationSummary che riassume lo stato di validazione:

<asp:ValidationSummary ID="ValidationSummary" runat="server" ValidationGroup="TestLogin" />

Se costruiamo un controllo composto è consigliabile usare lo stesso comportamento, oppure fornire la classe di una proprietà ValidationGroup per indicare il nome del gruppo da usare all'interno dei controlli figli. Questo perché non è possibile conoscere a priori quante volte il controllo può essere riutilizzato nella stessa pagina o se può andare in conflitto con altri già presenti ed è per questo che lo UniqueID garantisce un nome di gruppo univoco.

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi