ThemeShadow Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
ThemeShadow è un effetto ombreggiatura preconfigurato che può essere applicato a qualsiasi elemento XAML per disegnare le ombreggiature in modo appropriato in base a coordinate x, y e z. ThemeShadow regola automaticamente anche per altre specifiche ambientali:
- Si adatta alle modifiche apportate all'illuminazione, al tema utente, all'ambiente dell'app e alla shell.
- Ombreggiatura degli elementi automaticamente in base alla loro elevazione.
- Mantiene sincronizzati gli elementi durante lo spostamento e la modifica dell'elevazione.
- Mantiene le ombreggiature coerenti in tutte le applicazioni e 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à
- Attributi
Esempio
Tip
Per altre info, indicazioni sulla progettazione ed esempi di codice, vedi Profondità e ombreggiatura Z.
Commenti
Tip
Per altre info, indicazioni sulla progettazione ed esempi di codice, vedi Profondità e ombreggiatura Z.
Un ThemeShadow può essere applicato a qualsiasi elemento XAML per disegnare ombreggiature in base alle coordinate x, y e z relative tra un UIElement cast concettuale e uno o più UIElement ricevitori che hanno eseguito il rendering dell'ombreggiatura del caster.
ThemeShadow supporta solo ombre rettangolari. Per gli effetti di ombreggiatura personalizzati, è possibile usare un controllo DropShadow.
ThemeShadows in Popup
ThemeShadow proietta automaticamente ombre quando applicato a un qualsiasi elemento XAML all'interno di un popup. Proietterà ombre sul contenuto di sfondo dell'app dietro di esso e su tutti gli altri popup aperti sotto di esso.
Per usare ThemeShadow con Popup, usa la proprietà UIElement.Shadow per applicare un themeShadow a un elemento XAML. Elevare quindi l'elemento da altri elementi dietro di esso, ad esempio usando il componente z della proprietà UIElement.Translation . Per la maggior parte dei popup dell'interfaccia utente, l'elevazione predefinita consigliata rispetto al contenuto dello 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, devi specificare in modo esplicito gli altri elementi che possono ricevere l'ombreggiatura nell'insieme ThemeShadow.Receivers . I ricevitori non possono essere un antenato del caster nell'albero visivo.
Procedure consigliate per le prestazioni per ThemeShadow
Limitare il numero di elementi ricevitori personalizzati al minimo necessario.
Se più elementi ricevitori hanno la stessa elevazione, provare a combinarli puntando invece a un singolo elemento padre.
Se più elementi eseguiranno il cast dello stesso tipo di ombreggiatura sugli stessi elementi ricevitore, aggiungere l'ombreggiatura come risorsa condivisa e riutilizzarla.
Costruttori
| Nome | Descrizione |
|---|---|
| ThemeShadow() |
Inizializza una nuova istanza della classe ThemeShadow . |
Proprietà
| Nome | Descrizione |
|---|---|
| Dispatcher |
Restituisce |
| DispatcherQueue |
Ottiene l'oggetto |
| Receivers |
Ottiene una raccolta di elementi dell'interfaccia utente su cui è stato eseguito il cast di ThemeShadow. |
Metodi
| Nome | Descrizione |
|---|---|
| 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 dependencyObject. (Ereditato da DependencyObject) |
| ReadLocalValue(DependencyProperty) |
Restituisce il valore locale di una proprietà di dipendenza, se è impostato un valore locale. (Ereditato da DependencyObject) |
| RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registra una funzione di notifica per l'ascolto delle modifiche a una dipendenza specifica in questa istanza dependencyObject . (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) |