ThemeShadow Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Um ThemeShadow é um efeito de sombra pré-configurado que pode ser aplicado a qualquer elemento XAML para desenhar sombras adequadamente com base em coordenadas x, y, z. ThemeShadow também é ajustado automaticamente para outras especificações ambientais:
- Adapta-se a alterações na iluminação, no tema do usuário, no ambiente do aplicativo e no shell.
- Sombras elementos automaticamente com base em sua elevação.
- Mantém os elementos sincronizados à medida que se movem e alteram a elevação.
- Mantém as sombras consistentes em todos os aplicativos.
/// [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
- Herança
- Atributos
Exemplos
Tip
Para obter mais informações, diretrizes de design e exemplos de código, consulte a profundidade Z e a sombra.
Comentários
Tip
Para obter mais informações, diretrizes de design e exemplos de código, consulte a profundidade Z e a sombra.
Um ThemeShadow pode ser aplicado a qualquer elemento XAML para desenhar sombras com base nas coordenadas relativas x, y e z entre um UIElement do conversor conceitual e um ou mais UIElements de receptor que têm a sombra do conversor renderizada neles.
ThemeShadow dá suporte apenas a sombras retangulares. Para efeitos de sombra personalizados, você pode usar um DropShadow.
ThemeShadows em Popups
ThemeShadow projeta automaticamente sombras quando aplicado a qualquer elemento XAML em um Popup. Ele lançará sombras no conteúdo da tela de fundo do aplicativo por trás dele e quaisquer outros Pop-ups abertos abaixo dele.
Para usar ThemeShadow com Popups, use a propriedade UIElement.Shadow para aplicar um ThemeShadow a um elemento XAML. Em seguida, eleve o elemento de outros elementos por trás dele, por exemplo, usando o componente z da propriedade UIElement.Translation . Para a maioria das interfaces de pop-up, a elevação padrão recomendada em relação ao conteúdo de fundo do aplicativo é de 32 pixels efetivos.
ThemeShadow em outros elementos
Para converter uma sombra de um elemento XAML que não está em um pop-up, você deve especificar explicitamente os outros elementos que podem receber a sombra na coleção ThemeShadow.Receivers . Os receptores não podem ser um ancestral do emissor na árvore visual.
Práticas recomendadas de desempenho para ThemeShadow
Limite o número de elementos de receptor personalizados ao mínimo necessário.
Se vários elementos receptores estiverem na mesma elevação, tente combiná-los direcionando um único elemento pai.
Se vários elementos converterem o mesmo tipo de sombra nos mesmos elementos receptores, adicione a sombra como um recurso compartilhado e reutilize-a.
Construtores
| Nome | Description |
|---|---|
| ThemeShadow() |
Inicializa uma nova instância da classe ThemeShadow . |
Propriedades
| Nome | Description |
|---|---|
| Dispatcher |
Sempre retorna |
| DispatcherQueue |
Obtém o |
| Receivers |
Obtém uma coleção de elementos de interface do usuário em que este ThemeShadow é convertido. |
Métodos
| Nome | Description |
|---|---|
| ClearValue(DependencyProperty) |
Limpa o valor local de uma propriedade de dependência. (Herdado de DependencyObject) |
| GetAnimationBaseValue(DependencyProperty) |
Retorna qualquer valor base estabelecido para uma propriedade de dependência, que se aplicaria em casos em que uma animação não está ativa. (Herdado de DependencyObject) |
| GetValue(DependencyProperty) |
Retorna o valor efetivo atual de uma propriedade de dependência de um DependencyObject. (Herdado de DependencyObject) |
| ReadLocalValue(DependencyProperty) |
Retorna o valor local de uma propriedade de dependência, se um valor local for definido. (Herdado de DependencyObject) |
| RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registra uma função de notificação para escutar alterações em um DependencyProperty específico nesta instância dependencyObject . (Herdado de DependencyObject) |
| SetValue(DependencyProperty, Object) |
Define o valor local de uma propriedade de dependência em um DependencyObject. (Herdado de DependencyObject) |
| UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Cancela uma notificação de alteração que foi registrada anteriormente chamando RegisterPropertyChangedCallback. (Herdado de DependencyObject) |