Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Classe VisualStateGroup

 

Data di pubblicazione: ottobre 2016

Contiene si escludono a vicenda VisualState oggetti e VisualTransition gli oggetti che vengono utilizzati per passare da uno stato a altro.

Spazio dei nomi:   System.Windows
Assembly:  PresentationFramework (in PresentationFramework.dll)


[ContentPropertyAttribute("States")]
[RuntimeNamePropertyAttribute("Name")]
public class VisualStateGroup : DependencyObject

NomeDescrizione
System_CAPS_pubmethodVisualStateGroup()

Inizializza una nuova istanza della classe VisualStateGroup.

NomeDescrizione
System_CAPS_pubpropertyCurrentState

Ottiene il VisualState attualmente applicato al controllo.

System_CAPS_pubpropertyDependencyObjectType

Ottiene il DependencyObjectType che esegue il wrapping di CLR tipo di questa istanza. (Ereditato da DependencyObject.)

System_CAPS_pubpropertyDispatcher

Ottiene il Dispatcher questo DispatcherObject è associato.(Ereditato da DispatcherObject.)

System_CAPS_pubpropertyIsSealed

Ottiene un valore che indica se questa istanza è attualmente sealed (sola lettura).(Ereditato da DependencyObject.)

System_CAPS_pubpropertyName

Ottiene o imposta il nome di VisualStateGroup.

System_CAPS_pubpropertyStates

Ottiene la raccolta di si escludono a vicenda VisualState oggetti.

System_CAPS_pubpropertyTransitions

Ottiene la raccolta di VisualTransition oggetti.

NomeDescrizione
System_CAPS_pubmethodCheckAccess()

Determina se il thread chiamante ha accesso a questo DispatcherObject.(Ereditato da DispatcherObject.)

System_CAPS_pubmethodClearValue(DependencyProperty)

Cancella il valore locale di una proprietà. La proprietà da cancellare è specificata da un identificatore DependencyProperty.(Ereditato da DependencyObject.)

System_CAPS_pubmethodClearValue(DependencyPropertyKey)

Cancella il valore locale di una proprietà di sola lettura. La proprietà da cancellare è specificata da un oggetto DependencyPropertyKey.(Ereditato da DependencyObject.)

System_CAPS_pubmethodCoerceValue(DependencyProperty)

Assegna forzatamente il valore della proprietà di dipendenza specificata. Questa operazione viene eseguita richiamando qualsiasi funzione CoerceValueCallback specificata nei metadati della proprietà di dipendenza esistente nell'oggetto DependencyObject chiamante.(Ereditato da DependencyObject.)

System_CAPS_pubmethodEquals(Object)

Determina se l'oggetto DependencyObject è equivalente all'oggetto corrente DependencyObject.(Ereditato da DependencyObject.)

System_CAPS_protmethodFinalize()

Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulizia prima che l'oggetto stesso venga reclamato dalla procedura di Garbage Collection. (Ereditato da Object.)

System_CAPS_pubmethodGetHashCode()

Ottiene un codice hash per l'oggetto DependencyObject.(Ereditato da DependencyObject.)

System_CAPS_pubmethodGetLocalValueEnumerator()

Crea un enumeratore specializzato per determinare quali proprietà di dipendenza presentano valori impostati localmente su questo DependencyObject.(Ereditato da DependencyObject.)

System_CAPS_pubmethodGetType()

Ottiene l'oggetto Type dell'istanza corrente.(Ereditato da Object.)

System_CAPS_pubmethodGetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza in questa istanza di DependencyObject.(Ereditato da DependencyObject.)

System_CAPS_pubmethodInvalidateProperty(DependencyProperty)

Rivaluta il valore effettivo della proprietà di dipendenza specificata(Ereditato da DependencyObject.)

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.(Ereditato da Object.)

System_CAPS_protmethodOnPropertyChanged(DependencyPropertyChangedEventArgs)

Richiamato ogni volta che viene aggiornato il valore effettivo di qualsiasi proprietà di dipendenza in DependencyObject. La proprietà di dipendenza specifica modificata viene indicata nei dati dell'evento.(Ereditato da DependencyObject.)

System_CAPS_pubmethodReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se presente.(Ereditato da DependencyObject.)

System_CAPS_pubmethodSetCurrentValue(DependencyProperty, Object)

Imposta il valore di una proprietà di dipendenza senza modificare l'origine del valore.(Ereditato da DependencyObject.)

System_CAPS_pubmethodSetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza, specificato dal relativo identificatore della proprietà di dipendenza.(Ereditato da DependencyObject.)

System_CAPS_pubmethodSetValue(DependencyPropertyKey, Object)

Imposta il valore locale di una proprietà di dipendenza di sola lettura, specificato dall'identificatore DependencyPropertyKey della proprietà di dipendenza.(Ereditato da DependencyObject.)

System_CAPS_protmethodShouldSerializeProperty(DependencyProperty)

Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore della proprietà di dipendenza specificata.(Ereditato da DependencyObject.)

System_CAPS_pubmethodToString()

Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object.)

System_CAPS_pubmethodVerifyAccess()

Impone che il thread chiamante ha accesso a DispatcherObject.(Ereditato da DispatcherObject.)

NomeDescrizione
System_CAPS_pubeventCurrentStateChanged

Si verifica dopo che un controllo esegue la transizione a uno stato diverso.

System_CAPS_pubeventCurrentStateChanging

Si verifica all'avvio di un controllo in fase di transizione a uno stato diverso.

Ogni VisualStateGroup contiene una raccolta di VisualState oggetti. Oggetto VisualState contiene una raccolta di Storyboard oggetti che specificano come l'aspetto del controllo cambia quando il controllo è in un determinato stato. Ad esempio, un Button potrebbe avere un aspetto leggermente diverso quando viene premuto e quando non viene premuto. Due stati che il Button definisce corrispondono a quando viene premuto ("Pressed") e quando non è ("Normal").

Aggiungere VisualState a un controllo impostando la VisualStateManager.VisualStateGroups proprietà del controllo associata. Gli Stati che si escludono a vicenda nella stessa si VisualStateGroup. Ad esempio, il CheckBox dispone di due VisualStateGroup oggetti. Uno contiene gli stati, Normal, MouseOver, Pressed, e Disabled. L'altro contenente gli stati, Checked, UnChecked, e Indeterminate. Il CheckBox che può essere MouseOver e UnChecked allo stesso tempo, ma non può essere il MouseOver e Pressed stati nello stesso momento.

Sebbene sia possibile aggiungere VisualState oggetti qualsiasi elemento, sono particolarmente utile per consentire ad altri di ridefinire il comportamento visivo di un Control. Se si crea un controllo personalizzato che utilizza un ControlTemplate, è possibile specificare gli Stati che può essere controllo mediante l'aggiunta di un TemplateVisualStateAttribute nella relativa definizione di classe. Quindi tutti gli utenti che crea un nuovo ControlTemplate per il controllo può aggiungere VisualState oggetti al modello. Il TemplateVisualStateAttribute consente agli strumenti della finestra di progettazione, ad esempio Expression Blend, per esporre gli stati del controllo. Stati con lo stesso TemplateVisualStateAttribute.GroupName appartengono allo stesso VisualStateGroup.

Per ulteriori informazioni su come usare VisualStateGroup gli oggetti in un ControlTemplate, vedere personalizzazione dell'aspetto di un controllo esistente mediante la creazione di un oggetto ControlTemplate. Per ulteriori informazioni su come creare controllano che utilizzano il VisualStateManager, vedere la creazione di un controllo che ha un aspetto personalizzabile.

Il Transitions contiene proprietà VisualTransition gli oggetti che vengono applicati quando il controllo la transizione tra stati sono definiti nel VisualStateGroup.

Nell'esempio seguente viene creato un semplice ControlTemplate per un Button che contiene un Grid. Contiene inoltre un VisualStateGroup denominato CommonStates, che definisce il MouseOver e Normal stati. Il VisualStateGroup dispone anche di un VisualTransition che specifica che impiega mezzo secondo il Grid per passare da verde a rosso quando l'utente sposta il puntatore del mouse sul Button.

<ControlTemplate TargetType="Button">
  <Grid >
    <VisualStateManager.VisualStateGroups>
      <VisualStateGroup x:Name="CommonStates">

        <VisualStateGroup.Transitions>

          <!--Take one half second to trasition to the MouseOver state.-->
          <VisualTransition To="MouseOver" 
            GeneratedDuration="0:0:0.5"/>
        </VisualStateGroup.Transitions>

        <VisualState x:Name="Normal" />

        <!--Change the SolidColorBrush, ButtonBrush, to red when the
            mouse is over the button.-->
        <VisualState x:Name="MouseOver">
          <Storyboard>
            <ColorAnimation Storyboard.TargetName="ButtonBrush" 
              Storyboard.TargetProperty="Color" To="Red" />
          </Storyboard>
        </VisualState>
      </VisualStateGroup>
    </VisualStateManager.VisualStateGroups>
    <Grid.Background>
      <SolidColorBrush x:Name="ButtonBrush" Color="Green"/>
    </Grid.Background>
  </Grid>
</ControlTemplate>

.NET Framework
Disponibile da 4.0
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.0

I membri statici pubblici ( Condiviso in Visual Basic) di questo tipo è thread safe. Non tutti i membri di istanza sono garantiti come thread safe.

Torna all'inizio
Mostra: