FrameworkElement.Style Propriété

Définition

Obtient ou définit un style instance appliqué à cet objet pendant la disposition et le rendu.

public:
 property Style ^ Style { Style ^ get(); void set(Style ^ value); };
Style Style();

void Style(Style value);
public Style Style { get; set; }
var style = frameworkElement.style;
frameworkElement.style = style;
Public Property Style As Style
<frameworkElement Style="{StaticResource styleResourceKey}"/>

Valeur de propriété

Style appliqué pour l’objet, le cas échéant ; sinon, null. La valeur par défaut d’un FrameworkElement construit par défaut est null.

Remarques

La définition directe de la propriété Style n’est pas la façon la plus courante de mettre en forme l’apparence d’un élément d’interface utilisateur. Au lieu de cela, vous influencez l’apparence d’un élément d’interface utilisateur via l’une des techniques suivantes :

  • Vous définissez souvent les propriétés d’interface utilisateur individuelles d’un élément d’interface utilisateur en tant qu’attributs en XAML. FrameworkElement.Style s’applique uniquement à l’élément actuel, et toute valeur d’un StyleFrameworkElement.Style est remplacée par une valeur de propriété locale, de sorte que la définition de la valeur locale est plus directe et plus prévisible. Pour plus d’informations sur la relation entre une valeur style et une valeur de propriété locale, consultez Vue d’ensemble des propriétés de dépendance.
  • Les auteurs de contrôles écrivent généralement un contrôle qui peut être modlable, mais qui est également fourni avec un modèle par défaut. Votre application peut utiliser le contrôle et modifier son apparence en fournissant un nouveau ControlTemplate, qui fait partie d’un style défini dans les ressources. Ce style est généralement appliqué à l’aide de la fonctionnalité de style implicite , et non en définissant Style. Pour plus d’informations, consultez Contrôles de style.
  • Les auteurs de contrôles exposent également des propriétés qui font référence à des parties d’un contrôle qui peuvent avoir des styles ou des valeurs appliqués uniquement à cette partie, de sorte que vous n’avez pas à retempéler totalement le contrôle. Ici, vous définissez une propriété plus spécifique, et non FrameworkElement.Style.
  • Le modèle d’état visuel réinitialise fréquemment le style de contrôle au moment de l’exécution en réponse aux changements d’états qui se manifestent visuellement pour les utilisateurs. Par exemple, les modèles de contrôle ont généralement un état « Focus » qui ajoute un indicateur de focus visuel à l’apparence du contrôle afin qu’un utilisateur de clavier puisse voir quel élément de l’interface utilisateur a le focus clavier actuel. Pour plus d’informations sur le concept d’état visuel, consultez Démarrage rapide : Modèles de contrôle.

Vous pouvez modifier les valeurs de propriétés individuelles qui ont été définies dans un style. Par exemple, vous pouvez définir la propriété Template au moment de l’exécution, même si cette propriété a été définie par un style. Vous pouvez également ajouter des setters à la collection dans Setters. Toutefois, dès que ce style est utilisé par un objet chargé, le style doit être considéré comme scellé. Vous pouvez détecter cet état en vérifiant la valeur IsSealed pour le style. Un style est considéré comme étant en cours d’utilisation dès qu’il est référencé par un objet chargé connecté à l’arborescence d’objets d’une page affichée de l’interface utilisateur. Un style et ses setters peuvent également être considérés comme scellés lorsque l’objet qui utilise ce style déclenche son événement Loaded . La tentative de modification d’une propriété individuelle d’un style en cours d’utilisation (telle qu’une propriété dans la collection Setters ) lève une exception.

Les classes dérivées de Control ont un point d’entrée supplémentaire qui est utile pour contrôler les auteurs en ce qui concerne le style et le modèle d’application. FrameworkElement définit le rappel virtuel OnApplyTemplate appelé avant Loaded. Les classes dérivées de Control peuvent remplacer ce rappel pour ajuster les valeurs de propriété qui ont été définies par les modèles avant l’utilisation du style.

Si elle est interrogée au moment de l’exécution, la propriété Style ne retourne pas de styles qui proviennent d’un modèle appliqué ou d’états visuels actifs. Elle retourne uniquement les styles qui ont été définis explicitement par la propriété Style. En outre, il ne retourne pas de styles implicites.

S’applique à