ASP.Net  »  Guide  »  Guida Silverlight 

Range Controls: ScrollBar, ProgressBar e Slider



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:

ControlloDescrizione
ScrollBarRappresenta un controllo che fornisce una barra di scorrimento con un indicatore scorrevole la cui posizione corrisponde a un valore
SliderRappresenta un controllo che consente all'utente di selezionare un valore da un intervallo spostando un indicatore lungo una barra di avanzamento
ProgressBarRappresenta 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

Esempio di Slider

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%

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

ProgressBar con valori indeterminati

Ultimi articoli ASP.Net

LINQ e la trappola della 'deferred execution'

Una "trappola" in cui si può incappare utilizzando il risultato di...

C#, le Custom Type Conversion

Conversioni personalizzate tra classi, creare metodi particolari per...

Introduzione a Entity Framework

Il framework ORM messo a disposizione da .NET

Repeater: visualizzare un feed RSS

Utilizzare il controllo XMLDataSource e sfruttare il metodo XPath()...

Repeater, il server control "semplice"

Cos'è e come funziona il controllo Repeater

Altri articoli

Guide ASP.Net

Guida ASP.NET MVC Best Practices

Un workflow dettagliato e ricco di suggerimenti pratici per...

Guida ASP.NET Starter Kit

Un modo semplice per imparare ad utilizzare le tecnologie Microsoft...

Guida Visual Studio 2010

L'ambiente di sviluppo di riferimento per sviluppare applicazioni su...

Altre guide

Newsletter @Microsoft Dev

Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Progettazione database

11 Maggio 2012 a Milano
Disponibilità: 6 Posti

Amministratore di Reti Windows Server 2008

11 Giugno 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto