Style Classe

Definição

Permite o compartilhamento de propriedades, recursos e manipuladores de eventos entre instâncias de um tipo.

public ref class Style : System::Windows::Threading::DispatcherObject, System::Windows::Markup::IAddChild, System::Windows::Markup::INameScope
public ref class Style : System::Windows::Threading::DispatcherObject, System::Windows::Markup::IAddChild, System::Windows::Markup::INameScope, System::Windows::Markup::IQueryAmbient
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
[System.Windows.Markup.ContentProperty("Setters")]
[System.Windows.Markup.DictionaryKeyProperty("TargetType")]
public class Style : System.Windows.Threading.DispatcherObject, System.Windows.Markup.IAddChild, System.Windows.Markup.INameScope
[System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)]
[System.Windows.Markup.ContentProperty("Setters")]
[System.Windows.Markup.DictionaryKeyProperty("TargetType")]
public class Style : System.Windows.Threading.DispatcherObject, System.Windows.Markup.IAddChild, System.Windows.Markup.INameScope, System.Windows.Markup.IQueryAmbient
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
[<System.Windows.Markup.ContentProperty("Setters")>]
[<System.Windows.Markup.DictionaryKeyProperty("TargetType")>]
type Style = class
    inherit DispatcherObject
    interface INameScope
    interface IAddChild
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
[<System.Windows.Markup.ContentProperty("Setters")>]
[<System.Windows.Markup.DictionaryKeyProperty("TargetType")>]
type Style = class
    inherit DispatcherObject
    interface INameScope
    interface IAddChild
    interface IQueryAmbient
[<System.Windows.Localizability(System.Windows.LocalizationCategory.Ignore)>]
[<System.Windows.Markup.ContentProperty("Setters")>]
[<System.Windows.Markup.DictionaryKeyProperty("TargetType")>]
type Style = class
    inherit DispatcherObject
    interface IAddChild
    interface INameScope
    interface IQueryAmbient
Public Class Style
Inherits DispatcherObject
Implements IAddChild, INameScope
Public Class Style
Inherits DispatcherObject
Implements IAddChild, INameScope, IQueryAmbient
Herança
Atributos
Implementações

Exemplos

O exemplo a seguir mostra uma declaração de estilo que afetará a Background propriedade de um Control.

<Style x:Key="Style1">
  <Setter Property="Control.Background" Value="Yellow"/>
</Style>

Para aplicar o estilo acima, faça o seguinte:

<Label Content="Yellow Background" Style="{StaticResource Style1}" />

Você também pode aplicar estilos a todos os elementos de um determinado tipo usando a TargetType propriedade . Adicionar o tipo de destino ao estilo significa que você não precisa mais qualificar totalmente a propriedade que está configurando com a ClassName.PropertyName sintaxe. O exemplo a seguir define um estilo que será aplicado a cada TextBlock elemento.

<Style TargetType="{x:Type TextBlock}">
  <Setter Property="FontFamily" Value="Segoe Black" />
  <Setter Property="HorizontalAlignment" Value="Center" />
  <Setter Property="FontSize" Value="12pt" />
  <Setter Property="Foreground" Value="#777777" />
</Style>

Observação

Muitos controles WPF consistem em uma combinação de outros controles WPF, portanto, criar um estilo que se aplica a todos os controles de um tipo pode ter um impacto amplo. Por exemplo, se você criar um estilo direcionado aos TextBlock controles em um Canvas, o estilo será aplicado a todos os TextBlock controles na tela, mesmo que o TextBlock faça parte de outro controle, como um ListBox.

Para obter informações sobre como estender ou herdar de um estilo definido, consulte a BasedOn página .

Comentários

Você pode definir um Style em qualquer elemento derivado de FrameworkElement ou FrameworkContentElement. Um estilo é mais comumente declarado como um recurso dentro da Resources seção . Como os estilos são recursos, eles obedecem às mesmas regras de escopo que se aplicam a todos os recursos, portanto, onde você declara um estilo afeta onde ele pode ser aplicado. Se, por exemplo, você declarar o estilo no elemento raiz do arquivo XAML de definição de aplicativo, o estilo poderá ser usado em qualquer lugar do aplicativo. Se você estiver criando um aplicativo de navegação e declarar o estilo em um dos arquivos XAML do aplicativo, o estilo só poderá ser usado nesse arquivo XAML. Para obter mais informações sobre regras de escopo para recursos, consulte Recursos XAML.

A declaração de estilo consiste em um Style objeto que contém uma coleção de um ou mais Setter objetos. Cada Setter um consiste em um Property e um Value. A propriedade é o nome da propriedade do elemento ao qual o estilo deve ser aplicado. Depois que o estilo é declarado como um recurso, ele pode ser referenciado como qualquer outro recurso.

Observação

Se houver mais de um setter na coleção setter com o mesmo Property valor de propriedade, o setter declarado por último será usado. Da mesma forma, se você definir um valor para a mesma propriedade em um estilo e em um elemento diretamente, o valor definido no elemento terá precedência diretamente.

O modelo de modelagem e estilo de Windows Presentation Foundation (WPF) permite a manutenção e o compartilhamento de uma aparência, bem como a separação de apresentação e lógica. O modelo de modelagem e estilo inclui um conjunto de recursos que permitem personalizar sua interface do usuário. Esse conjunto de recursos inclui a Style classe , bem como o seguinte:

Para obter mais informações, consulte Estilo e modelagem.

Construtores

Style()

Inicializa uma nova instância da classe Style.

Style(Type)

Inicializa uma nova instância da classe Style a ser usada no Type especificado.

Style(Type, Style)

Inicializa uma nova instância da classe Style a ser usada no Type especificado e baseada no Style especificado.

Propriedades

BasedOn

Obtém ou define um estilo definido que é a base do estilo atual.

Dispatcher

Obtém o Dispatcher ao qual este DispatcherObject está associado.

(Herdado de DispatcherObject)
IsSealed

Obtém um valor que indica se o estilo é somente leitura e não pode ser alterado.

Resources

Obtém ou define a coleção de recursos que podem ser usados dentro do escopo desse estilo.

Setters

Obtém uma coleção de objetos Setter e EventSetter.

TargetType

Obtém ou define o tipo para o qual esse estilo foi projetado.

Triggers

Obtém uma coleção de objetos TriggerBase que se aplicam a valores de propriedade com base nas condições especificadas.

Métodos

CheckAccess()

Determina se o thread de chamada tem acesso a este DispatcherObject.

(Herdado de DispatcherObject)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Retorna o código hash para este Style.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
RegisterName(String, Object)

Registra um novo par nome-objeto no namescope atual.

Seal()

Bloqueia esse estilo e todos os gatilhos e fábricas de forma que não podem ser alterados.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
UnregisterName(String)

Remove um mapeamento de nome-objeto do namescope.

VerifyAccess()

Impõe que o thread de chamada tenha acesso a este DispatcherObject.

(Herdado de DispatcherObject)

Implantações explícitas de interface

IAddChild.AddChild(Object)

Adiciona um objeto filho.

IAddChild.AddText(String)

Adiciona o conteúdo do texto de um nó ao objeto.

INameScope.FindName(String)

Retorna um objeto que tem o nome de identificação fornecido.

IQueryAmbient.IsAmbientPropertyAvailable(String)

Consulta se uma propriedade de ambiente especificada está disponível no escopo atual.

Aplica-se a

Confira também