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 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à
- 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
Limita il numero di elementi ricevitore personalizzati al minimo necessario.
Se più elementi ricevitori sono allo stesso livello di elevazione, provare a combinarli puntando a un singolo elemento padre.
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 |
DispatcherQueue |
Ottiene l'oggetto |
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) |