SimpleCheckBox

Questa pagina si applica solo ai progetti WPF

La casella di controllo è un controllo contenuto che funge da controllo interruttore associato a tre possibili stati: selezionato, non selezionato e indeterminato. Lo stato IsChecked indica se la casella di controllo è selezionata. In Microsoft Expression Blend è possibile inserire contenuto in una casella di controllo facendo doppio clic sulla casella di controllo e quindi disegnandovi un oggetto all'interno. Se si desidera posizionare più oggetti nella casella di controllo, è innanzitutto necessario aggiungere un pannello di layout, ad esempio Grid o Canvas. Una casella di controllo può inoltre contenere testo per impostazione predefinita. È possibile modificare il testo facendo clic con il pulsante destro del mouse sulla casella di controllo e quindi scegliendo Modifica testo.

Visualizzazione tavola da disegno di un controllo SimpleCheckBox

Cc295106.b070f542-4f36-422b-a930-be4b1311b2ca(it-it,Expression.40).png

Descrizione del modello del controllo

Il modello del controllo SimpleCheckBox è composto dai seguenti elementi:

  • Un contenitore BulletDecorator , utilizzato per allineare la casella di controllo rispetto al testo. Un contenitore BulletDecorator accetta due oggetti figlio: un punto elenco e un oggetto contenuto, ad esempio ContentPresenter. BulletDecorator viene utilizzato anche in altri controlli, ad esempio il controllo RadioButton, in cui è necessario allineare il testo rispetto a un altro oggetto.

  • Un elemento Bullet , contenente un pannello Grid che a sua volta contiene un elemento Path denominato CheckMark e un elemento Border. L'elemento Path viene utilizzato per disegnare un segno "x".

  • Un elemento ContentPresenter, utilizzato per visualizzare la proprietà Content della casella di controllo a cui è applicato il modello. Questo elemento deve essere presente per visualizzare il contenuto della casella di controllo.

Trigger di proprietà utilizzati

I trigger di proprietà del modello del controllo vengono utilizzati per fare in modo che il controllo cambi in base alle modifiche delle proprietà. È possibile fare clic sugli elementi nel pannello Trigger per visualizzare le proprietà che vengono modificate quando un trigger è attivo. Quando ad esempio nel modello SimpleCheckBox la proprietà IsChecked è impostata su False, la visibilità dell'elemento tracciato CheckMark viene modificata in Collapsed. In altri trigger, lo sfondo dell'elemento Border viene modificato tramite risorse pennello.

Pennelli utilizzati

Il modello SimpleCheckBox utilizza le seguenti risorse pennello del dizionario risorse SimpleStyles.xaml:

  • La proprietà Background dell'elemento Border può essere impostata utilizzando NormalBrush quando non è attivo alcun trigger, MouseOverBrush quando la proprietà IsMouseOver è impostata su True, PressedBrush quando la proprietà IsPressed è impostata su True e DisabledBackgroundBrush quando la proprietà IsEnabled è impostata su False.

  • La proprietà BorderBrush può essere impostata utilizzando NormalBorderBrush quando non è attivo alcun trigger, PressedBorderBrush quando la proprietà IsPressed è impostata su True, DisabledBorderBrush quando la proprietà IsEnabled è impostata su False.

  • La proprietà Foreground viene impostata utilizzando DisabledForegroundBrush quando la proprietà IsEnabled è impostata su False.

  • La proprietà Stroke dell'elemento CheckMark utilizza GlyphBrush per disegnare il segno "x".

Procedure consigliate e linee guida di progettazione

  • In generale, è consigliabile utilizzare un controllo Grid come oggetto radice del modello se si prevede che un progettista dell'interfaccia utente di un'applicazione aggiungerà altri elementi visivi al controllo. Expression Blend cerca un pannello di layout come il controllo Grid e lo rende attivo per impostazione predefinita, in modo che i nuovi oggetti aggiunti alla tavola da disegno diventino oggetti figlio del pannello di layout.

  • Il contenuto della casella di controllo viene visualizzato dall'oggetto ContentPresenter. Gli oggetti ContentPresenter associano automaticamente il modello alla proprietà Content del controllo a cui è applicato il modello. Questo oggetto deve essere presente affinché venga visualizzato il contenuto della casella di controllo disponibile nell'oggetto padre a cui è applicato il modello.

  • In alcuni casi il controllo utilizzato non disporrà di attributi sufficienti a cui definire associazioni nel modello del controllo. Il controllo CheckBox, ad esempio, non dispone di un attributo che consenta di impostare il pennello per l'oggetto CheckMark. In tal caso, il tratto dell'oggetto CheckMark viene impostato su un pennello per semplificarne la modifica. È possibile creare una classe personalizzata basata sul controllo CheckBox e aggiungere altri attributi a cui creare un'associazione oppure creare un'associazione a uno degli attributi esistenti. Per un esempio di classe personalizzata, vedere Esercitazione: creare un controllo personalizzato con proprietà personalizzate in questo manuale dell'utente.

  • L'oggetto Grid è a dimensione fissa, in quanto l'oggetto tracciato CheckMark può essere nascosto e visualizzato. Se l'oggetto Grid non fosse a dimensione fissa, il testo contenuto in ContentPresenter si sposterebbe quando viene modificata la selezione della casella di controllo. In alternativa a utilizzare un oggetto Grid a dimensione fissa e a nascondere il tracciato CheckMark, è possibile impostare su 0 il valore Opacity della proprietà Stroke nell'oggetto tracciato CheckMark.

Vedere anche

Attività

Esercitazione: personalizzare l'aspetto del segno di spunta in un controllo SimpleCheckBox

Copyright © 2011 Microsoft Corporation. Tutti i diritti riservati.