Langage

ThemeShadow Classe

Définition

Un ThemeShadow est un effet d’ombre préconfiguré qui peut être appliqué à n’importe quel élément XAML pour dessiner les ombres de manière appropriée en fonction des coordonnées x, y, z. ThemeShadow ajuste également automatiquement les autres spécifications environnementales :

  • S’adapte aux modifications apportées à l’éclairage, au thème utilisateur, à l’environnement d’application et à l’interpréteur de commandes.
  • Ombres éléments automatiquement en fonction de leur élévation.
  • Conserve les éléments synchronisés au fur et à mesure qu’ils déplacent et modifient l’élévation.
  • Maintient la cohérence des ombres dans l’ensemble et dans les applications.
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ThemeShadow : Shadow
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class ThemeShadow : Shadow
Public Class ThemeShadow
Inherits Shadow
Héritage
Object IInspectable DependencyObject Shadow ThemeShadow
Attributs

Exemples

Tip

Pour plus d’informations, des conseils de conception et des exemples de code, consultez la profondeur Z et l’ombre.

Remarques

Tip

Pour plus d’informations, des conseils de conception et des exemples de code, consultez la profondeur Z et l’ombre.

Un ThemeShadow peut être appliqué à n’importe quel élément XAML pour dessiner des ombres basées sur les coordonnées x, y et z relatives entre un UIElement de caster conceptuel et un ou plusieurs UIElements récepteurs qui ont l’ombre de la caster affichée sur eux.

ThemeShadow prend uniquement en charge les ombres rectangulaires. Pour les effets d’ombre personnalisés, vous pouvez utiliser un DropShadow.

ThemeShadows dans les fenêtres contextuelles

ThemeShadow convertit automatiquement les ombres lorsqu’elles sont appliquées à n’importe quel élément XAML dans une fenêtre contextuelle. Il projette des ombres sur le fond de l'application et sur les autres pop-ups ouverts en dessous.

Pour utiliser ThemeShadow avec des fenêtres contextuelles, utilisez la propriété UIElement.Shadow pour appliquer un ThemeShadow à un élément XAML. Ensuite, élever l’élément à partir d’autres éléments derrière lui, par exemple en utilisant le composant z de la propriété UIElement.Translation . Pour la plupart des interfaces utilisateur contextuelles, l’élévation par défaut recommandée par rapport au contenu d’arrière-plan de l’application est de 32 pixels effectifs.

ThemeShadow dans d’autres éléments

Pour convertir une ombre à partir d’un élément XAML qui n’est pas dans une fenêtre contextuelle, vous devez spécifier explicitement les autres éléments qui peuvent recevoir l’ombre dans la collection ThemeShadow.Receivers . Les récepteurs ne peuvent pas être un ancêtre de l'émetteur dans l’arborescence visuelle.

Meilleures pratiques en matière de performances pour ThemeShadow

  1. Limitez le nombre d’éléments récepteur personnalisés au minimum nécessaire.

  2. Si plusieurs éléments récepteurs sont à la même élévation, essayez de les combiner en ciblant un seul élément parent à la place.

  3. Si plusieurs éléments castent le même type d’ombre sur les mêmes éléments récepteurs, ajoutez l’ombre en tant que ressource partagée et réutilisez-la.

Constructeurs

Nom Description
ThemeShadow()

Initialise une nouvelle instance de la classe ThemeShadow .

Propriétés

Nom Description
Dispatcher

Retourne null toujours dans une application du Kit de développement logiciel (SDK) d’application Windows. Utilisez DispatcherQueue à la place.

(Hérité de DependencyObject)
DispatcherQueue

Obtient le DispatcherQueue résultat auquel cet objet est associé. Représente DispatcherQueue une installation qui peut accéder au DependencyObject thread d’interface utilisateur même si le code est initié par un thread non-interface utilisateur.

(Hérité de DependencyObject)
Receivers

Obtient une collection d’éléments d’interface utilisateur sur utilisant themeShadow.

Méthodes

Nom Description
ClearValue(DependencyProperty)

Efface la valeur locale d’une propriété de dépendance.

(Hérité de DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Retourne toute valeur de base établie pour une propriété de dépendance, qui s’applique dans les cas où une animation n’est pas active.

(Hérité de DependencyObject)
GetValue(DependencyProperty)

Retourne la valeur effective actuelle d’une propriété de dépendance à partir d’un DependencyObject.

(Hérité de DependencyObject)
ReadLocalValue(DependencyProperty)

Retourne la valeur locale d’une propriété de dépendance, si une valeur locale est définie.

(Hérité de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Inscrit une fonction de notification pour écouter les modifications apportées à une dependencyProperty spécifique sur cette instance DependencyObject .

(Hérité de DependencyObject)
SetValue(DependencyProperty, Object)

Définit la valeur locale d’une propriété de dépendance sur un DependencyObject.

(Hérité de DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annule une notification de modification qui a été précédemment inscrite en appelant RegisterPropertyChangedCallback.

(Hérité de DependencyObject)

S’applique à

Voir aussi