I Range Controls sono quei controlli che hanno la caratteristica di rappresentare un elemento il cui valore è compreso in un intervallo specifico.
Derivano dalla classe System.Windows.Controls.Primitives.RangeBase dell'assembly System.Windows.dll ed espongono principalmente le proprietà Value, Maximum e Minimum, che indicano rispettivamente il valore corrente, il limite superiore e quello inferiore dell'intervallo.
Appartengono a questa categoria i controlli:
| Controllo | Descrizione |
|---|---|
ScrollBar | Rappresenta un controllo che fornisce una barra di scorrimento con un indicatore scorrevole la cui posizione corrisponde a un valore |
Slider | Rappresenta un controllo che consente all'utente di selezionare un valore da un intervallo spostando un indicatore lungo una barra di avanzamento |
ProgressBar | Rappresenta un controllo che indica lo stato di un'operazione |
Nella maggior parte dei casi può non essere necessario utilizzare un controllo ScrollBar direttamente, dato che abbiamo a disposizione lo ScrollViewer, un controllo più pratico a livello più alto.
Slider è un controllo utile quando abbiamo bisogno di impostare un valore numerico, in cui il numero stesso non è particolarmente significativo, per esempio per impostare il volume di un lettore multimediale trascinando l'apposito indicatore. Oltre alle proprietà tipiche dei Range Controls, Slider espone Orientation, per indicare se la barra è orizzontale o verticale.
<Slider Orientation="Horizontal" Width="200"
Minimum="0" Maximum="10" />
Figura 37. Esempio di Slider orizzontale
Esistono altre due proprietà comuni per tutti i Range Controls: SmallChange e LargeChange, indicano rispettivamente di quanto modificare il valore corrente a fronte di un piccolo o grande spostamento.
Queste proprietà sono utilizzate solo dai primi due controlli della tabella, nell specifico dello Slider, otteniamo un piccolo spostamento quando utilizziamo i tasti freccia della tastiera ed un grande spostamento tramite i tasti PageUp e PageDown.
L'evento ValueChanged viene scaturito ogni volta che il valore corrente viene modificato, possiamo intercettare questo evento nel code-behind ed assegnare il relativo comportamento.
La ProgressBar è il tipico controllo che permette in maniera visuale di rappresentare lo stato di avanzamento un'operazione. Tipicamente utilizzato per attività lunghe, questo controllo non prevede nessun intervento da parte dell'utente.
I valori predefiniti per le proprietà Minimum e Maximum sono rispettivamente zero (0) e cento (100), quindi a sua volta Value rappresenta la percentuale di lavoro svolto. Possiamo cambiare questo comportamento modificando i valori delle proprietà. Ecco un esempio con avanzamento al 30%:
<ProgressBar Width="200" Height="25" Value="30" />
Figura 38. ProgressBar al 30%
Ci sono contesti poi, in cui non conosciamo a priori i suddetti valori, in questi casi sfruttiamo la proprietà IsIndeterminate, impostata a true. La ProgressBar utilizzerà una animazione che da all'utente l'idea di una operazione in corso, senza specificare l'avanzamento.
<ProgressBar Width="200" Height="25" IsIndeterminate="True" />
Figura 39. ProgressBar con valori indeterminati
LINQ e la trappola della 'deferred execution'Una "trappola" in cui si può incappare utilizzando il risultato di... |
C#, le Custom Type ConversionConversioni personalizzate tra classi, creare metodi particolari per... |
Introduzione a Entity FrameworkIl framework ORM messo a disposizione da .NET |
Repeater: visualizzare un feed RSSUtilizzare il controllo XMLDataSource e sfruttare il metodo XPath()... |
Repeater, il server control "semplice"Cos'è e come funziona il controllo Repeater |
Guida ASP.NET MVC Best PracticesUn workflow dettagliato e ricco di suggerimenti pratici per... |
Guida ASP.NET Starter KitUn modo semplice per imparare ad utilizzare le tecnologie Microsoft... |
Guida Visual Studio 2010L'ambiente di sviluppo di riferimento per sviluppare applicazioni su... |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Corso Progettazione database11 Maggio 2012 a Milano |
|
|
Amministratore di Reti Windows Server 200811 Giugno 2012 a Milano |
|
Nessun corso previsto |