Langage

VisualStateManager.GoToStateCore Méthode

Définition

En cas de substitution dans une classe dérivée, fait passer un contrôle entre les états.

protected:
 virtual bool GoToStateCore(Control ^ control, FrameworkElement ^ templateRoot, Platform::String ^ stateName, VisualStateGroup ^ group, VisualState ^ state, bool useTransitions) = GoToStateCore;
bool GoToStateCore(Control const& control, FrameworkElement const& templateRoot, winrt::hstring const& stateName, VisualStateGroup const& group, VisualState const& state, bool const& useTransitions);
protected virtual bool GoToStateCore(Control control, FrameworkElement templateRoot, string stateName, VisualStateGroup group, VisualState state, bool useTransitions);
function goToStateCore(control, templateRoot, stateName, group, state, useTransitions)
Protected Overridable Function GoToStateCore (control As Control, templateRoot As FrameworkElement, stateName As String, group As VisualStateGroup, state As VisualState, useTransitions As Boolean) As Boolean

Paramètres

control
Control

Contrôle à passer d’un état à l’autre.

templateRoot
FrameworkElement

Élément racine du ControlTemplate du contrôle.

stateName
String

Platform::String

winrt::hstring

Nom de l’état vers lequel effectuer la transition.

group
VisualStateGroup

VisualStateGroup auquel appartient l’état.

state
VisualState

Représentation de l’état vers lequel effectuer la transition.

useTransitions
Boolean

bool

true pour utiliser visualTransition pour passer d’un état à l’autre ; sinon, false.

Retours

Boolean

bool

true si le contrôle passe correctement à l’état nouveau ; sinon, false.

Remarques

Cette API fait partie du scénario de définition d’un comportement VisualStateManager personnalisé. La substitution modifie le comportement d’état dans le comportement de GoToStateCore votre classe personnalisée.

Pour référencer votre classe VisualStateManager personnalisée, définissez la valeur de la propriété jointe VisualStateManager.CustomVisualStateManager dans n’importe quel modèle de contrôle dans lequel vous souhaitez utiliser le comportement de classe personnalisé VisualStateManager . Vous créez généralement une instance de la classe personnalisée VisualStateManager par le biais de la construction XAML par défaut dans Application.Resources. Ensuite, la VisualStateManager.CustomVisualStateManager propriété jointe est définie à l’aide d’une référence d’extension de balisage {StaticResource} à la clé de la ressource personnalisée VisualStateManager .

Remarques pour les héritiers

Lorsqu’un consommateur de votre classe VisualStateManager personnalisée appelle GoToState pour modifier l’état visuel d’un contrôle, il s’agit du comportement par défaut que vous remplacez :+ Si VisualState tel qu’il est nommé par stateName un Storyboard, le storyboard commence.

  • Si l’état VisualState utilisé par le contrôle avant l’état nouvellement demandé a un storyboard, ce storyboard s’arrête.
  • Si visualState n’existe stateName pas dans le groupfichier , votre implémentation doit retourner false.
  • Si le contrôle se trouve déjà dans VisualState demandé en tant que stateName, votre implémentation doit retourner true.

Pour plus d’informations sur le comportement par défaut, consultez GoToState.

Événements pour les modifications d’état visuel

CurrentStateChanging se déclenche lorsque le contrôle commence à passer des états comme demandé par l’appel GoToState . Si un VisualTransition est appliqué au changement d’état, cet événement se produit au début de la transition.

CurrentStateChanged se déclenche une fois que le contrôle est dans l’état demandé par l’appel GoToState , tout comme le nouveau Storyboard commence. Aucun événement n’est déclenché sur la fin du nouveau storyboard.

Si un VisualTransition n’est pas appliqué, CurrentStateChanging et CurrentStateChanged se déclenchent en succession rapide, mais sont garantis dans cet ordre si les deux se produisent.

Toutefois, si une transition de modification d’état est interrompue par un nouvel appel GoToState , l’événement CurrentStateChanged n’est jamais déclenché pour la première transition d’état. Une nouvelle série d’événements est déclenchée pour la modification d’état demandée suivante.

La substitution du comportement de RaiseCurrentStateChanged et RaiseCurrentStateChanging est facultative : comment et quand les événements sont déclenchés par l’implémentation par défaut peuvent être adéquats pour votre classe personnalisée.

S’applique à

Voir aussi