Information and communication technology me.think.toString("blog");
Focus controlli con RadioList
Gestendo alcuni controlli in ASP.NET mi è sorta la necessità di spostare il focus su determinati controlli in base alle scelte dell’utente nella pagina. Un semplice esempio puo essere quello di spostare il focus su un controllo in base alla scelta di un determinato radio button. Ho creato una semplice pagina in cui è presente una RadioList con due Items e due textbox con due label annessi.
La Radiolist ha due scelte: Cane/Gatto e Nessuno. L’utente può indicare se ha un animale o se non lo ha. Se viene scelto Cane/Gatto il focus si sposta sulla textbox dove si indica la razza dell’animale, altrimenti se si va su Nessuno di passa ad un altro ipotetico controllo (la nostra seconda textbox). Come mostrato nella figura sotto.

Per rendere più simpatico il tutto ho pensato di cambiare il colore, nel caso della seconda scelta, il colore della textbox per la razza dell’animale in grigio e poi di disabilitare la stessa textbox. Per fare ciò bastano queste poche righe di codice:
protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
{
if (RadioButtonList1.SelectedValue == "Cane/Gatto")
{
TextBox2.Focus();
TextBox1.BackColor = System.Drawing.Color.Gray;
TextBox1.Enabled = false;
}
else
TextBox1.BackColor = System.Drawing.Color.White;
TextBox1.Enabled = true;
TextBox1.Focus();
}
Nel corpo dell’ else riporto il colore della prima texbox a white e la riabilito. ciò non è necessario se il visitatore sceglie per la prima volta Cane/Gatto nella radiolist1, ma nel caso in cui dopo aver scelto nessuno cambi idea e reimposti la sua scelta a Cane/Gatto.
Carino vero?
| Stampa l'articolo | Questo articolo è stato pubblicato da antferr il giugno 11, 2007 alle 10:56 am, ed è archiviato come ASP.NET. Puoi seguire i commenti a questo post attraverso RSS 2.0. Puoi pubblicare un commento o segnalare un trackback dal tuo sito. |

