Condividi tramite


ThemeShadow Classe

Definizione

ThemeShadow è un effetto ombreggiatura preconfigurato che può essere applicato a qualsiasi elemento XAML per disegnare ombreggiature in modo appropriato in base a coordinate x, y, z. ThemeShadow si adatta automaticamente anche in base ad altre specifiche ambientali:

  • Si adatta alle variazioni di illuminazione, tema utente, ambiente dell'app e shell.
  • Gli elementi Shadows si basano automaticamente sulla loro elevazione.
  • Mantiene sincronizzati gli elementi in caso di spostamento e di modifica dell'elevazione.
  • Mantiene le ombreggiature coerenti in tutte le applicazioni.
/// [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
Ereditarietà
Object IInspectable DependencyObject Shadow ThemeShadow
Attributi

Esempio

Suggerimento

Per altre informazioni, indicazioni sulla progettazione e esempi di codice, vedere Profondità Z e ombreggiatura.

Commenti

Suggerimento

Per altre informazioni, indicazioni sulla progettazione e esempi di codice, vedere Profondità Z e ombreggiatura.

Un Oggetto ThemeShadow può essere applicato a qualsiasi elemento XAML per disegnare ombreggiature in base alle coordinate x, y e z relative tra un uiElement del cast concettuale e uno o più UIElement ricevitori che hanno l'ombreggiatura del cast visualizzata.

ThemeShadow supporta solo ombreggiature rettangolari. Per gli effetti ombreggiatura personalizzati, è possibile usare un dropShadow.

ThemeShadows in Popup

ThemeShadow crea automaticamente le ombreggiature se applicato a qualsiasi elemento XAML in un oggetto Popup. Creerà le ombreggiature per il contenuto di sfondo dell'app dietro di esso e per tutti gli altri popup aperti sotto di esso.

Per usare ThemeShadow con popup, usare la proprietà UIElement.Shadow per applicare un oggetto ThemeShadow a un elemento XAML. Quindi, elevare l'elemento da altri elementi dietro di esso, ad esempio usando il componente z della proprietà UIElement.Translation . Per la maggior parte dell'interfaccia utente popup, l'elevazione predefinita consigliata rispetto al contenuto di sfondo dell'app è di 32 pixel effettivi.

ThemeShadow in altri elementi

Per eseguire il cast di un'ombreggiatura da un elemento XAML che non si trova in un popup, è necessario specificare in modo esplicito gli altri elementi che possono ricevere l'ombreggiatura nell'insieme ThemeShadow.Receivers . I ricevitori non possono essere un predecessore del caster nell'albero visivo.

Procedure consigliate per le prestazioni per ThemeShadow

  1. Limita il numero di elementi ricevitore personalizzati al minimo necessario.

  2. Se più elementi ricevitori sono allo stesso livello di elevazione, provare a combinarli puntando a un singolo elemento padre.

  3. Se più elementi creano lo stesso tipo di ombreggiatura sugli stessi elementi ricevitore, aggiungi l'ombreggiatura come risorsa condivisa e riutilizzala.

Costruttori

ThemeShadow()

Inizializza una nuova istanza della classe ThemeShadow .

Proprietà

Dispatcher

Restituisce null sempre in un'app SDK per app di Windows. Usare invece DispatcherQueue .

(Ereditato da DependencyObject)
DispatcherQueue

Ottiene l'oggetto DispatcherQueue associato. Rappresenta DispatcherQueue una struttura che può accedere al thread dell'interfaccia utente anche se il codice viene avviato da un thread non dell'interfaccia DependencyObject utente.

(Ereditato da DependencyObject)
Receivers

Ottiene una raccolta di elementi dell'interfaccia utente in cui viene eseguito il cast di ThemeShadow.

Metodi

ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà di dipendenza.

(Ereditato da DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Restituisce qualsiasi valore di base stabilito per una proprietà di dipendenza, che si applica nei casi in cui un'animazione non è attiva.

(Ereditato da DependencyObject)
GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza da un oggetto DependencyObject.

(Ereditato da DependencyObject)
ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se viene impostato un valore locale.

(Ereditato da DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una funzione di notifica per l'ascolto delle modifiche a un'istanza di DependencyObject specifica.

(Ereditato da DependencyObject)
SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza in un oggetto DependencyObject.

(Ereditato da DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annulla una notifica di modifica registrata in precedenza chiamando RegisterPropertyChangedCallback.

(Ereditato da DependencyObject)

Si applica a

Vedi anche