Partilhar via


TriggerBase Classe

Definição

Representa a classe base para especificar um valor condicional dentro de um objeto Style.

public ref class TriggerBase abstract : System::Windows::DependencyObject
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
public abstract class TriggerBase : System.Windows.DependencyObject
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
type TriggerBase = class
    inherit DependencyObject
Public MustInherit Class TriggerBase
Inherits DependencyObject
Herança
Derivado
Atributos

Exemplos

Há vários tipos diferentes de gatilhos: Trigger, MultiTrigger, EventTrigger, DataTriggere MultiDataTrigger.

A Trigger classe é o tipo mais simples de gatilhos. Um Trigger objeto permite que você aplique alterações com base no valor de uma propriedade. Por exemplo, o exemplo a seguir mostra um nomeado Style disponível para Button controles. O Style define um Trigger elemento que altera a Foreground propriedade de um botão quando a IsPressed propriedade é true.

<Style x:Key="Triggers" TargetType="Button">
    <Style.Triggers>
    <Trigger Property="IsPressed" Value="true">
        <Setter Property = "Foreground" Value="Green"/>
    </Trigger>
    </Style.Triggers>
</Style>

Se você precisar aplicar alterações com base no estado de várias propriedades, poderá usar o MultiTrigger. Para obter um exemplo, consulte a MultiTrigger página.

A EventTrigger classe permite que você aplique alterações quando ocorrer um evento. O exemplo a seguir contém dois EventTrigger objetos, um dos quais ocorre quando o mouse entra no elemento e o outro ocorre quando o mouse deixa o elemento.

<Style TargetType="Rectangle">
  <Setter Property="Width" Value="50" />
  <Setter Property="Height" Value="50" />
  <Setter Property="Margin" Value="20" />
  <Setter Property="HorizontalAlignment" Value="Left" />
  <Style.Triggers>
    <EventTrigger RoutedEvent="MouseEnter">
        <BeginStoryboard>
            <Storyboard>
              <DoubleAnimation To="300" Duration="0:0:1.5" 
                AccelerationRatio="0.10" DecelerationRatio="0.25" 
                Storyboard.TargetProperty="(Canvas.Width)" />
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
    <EventTrigger RoutedEvent="MouseLeave">
        <BeginStoryboard>
            <Storyboard>
              <DoubleAnimation Duration="0:0:1.5" 
                AccelerationRatio="0.10" DecelerationRatio="0.25" 
                Storyboard.TargetProperty="(Canvas.Width)" />
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
  </Style.Triggers>
</Style>

Essas também são as DataTrigger classes e MultiDataTrigger . Eles são semelhantes a Trigger e MultiTrigger exceto que são para propriedades associadas a dados.

Comentários

O modelo de modelagem e estilo do WPF permite que você especifique gatilhos em seus Style, ControlTemplatee DataTemplate. Essencialmente, TriggerBase é a classe base para objetos que permitem aplicar alterações quando determinadas condições (como quando um determinado valor de propriedade se torna trueou quando ocorre um evento) são atendidas.

Propriedades

DependencyObjectType

Obtém o DependencyObjectType que encapsula o tipo CLR dessa instância.

(Herdado de DependencyObject)
Dispatcher

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

(Herdado de DispatcherObject)
EnterActions

Obtém uma coleção de objetos TriggerAction a ser aplicada quando o objeto gatilho se tornar ativo. Essa propriedade não se aplica à classe EventTrigger.

ExitActions

Obtém uma coleção de objetos TriggerAction a ser aplicada quando o objeto de gatilho se tornar inativo. Essa propriedade não se aplica à classe EventTrigger.

IsSealed

Obtém um valor que indica se essa instância está validada no momento (somente leitura).

(Herdado de DependencyObject)

Métodos

CheckAccess()

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

(Herdado de DispatcherObject)
ClearValue(DependencyProperty)

Limpa o valor local de uma propriedade. A propriedade a ser limpa é especificada por um identificador DependencyProperty.

(Herdado de DependencyObject)
ClearValue(DependencyPropertyKey)

Limpa o valor local de uma propriedade somente leitura. A propriedade a ser limpa é especificada por um DependencyPropertyKey.

(Herdado de DependencyObject)
CoerceValue(DependencyProperty)

Converte o valor da propriedade de dependência especificada. Isso é feito invocando qualquer função CoerceValueCallback especificada nos metadados de propriedade para a propriedade de dependência, visto que ela existe na chamada a DependencyObject.

(Herdado de DependencyObject)
Equals(Object)

Determina se um DependencyObject fornecido é equivalente ao DependencyObject atual.

(Herdado de DependencyObject)
GetHashCode()

Obtém o código hash para esse DependencyObject.

(Herdado de DependencyObject)
GetLocalValueEnumerator()

Cria um enumerador especializado para determinar quais propriedades de dependência têm valores definidos localmente nessa DependencyObject.

(Herdado de DependencyObject)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetValue(DependencyProperty)

Retorna o valor efetivo atual de uma propriedade de dependência nessa instância de um DependencyObject.

(Herdado de DependencyObject)
InvalidateProperty(DependencyProperty)

Reavalia o valor efetivo para a propriedade de dependência especificada.

(Herdado de DependencyObject)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Invocado sempre que o valor efetivo de qualquer propriedade de dependência nesse DependencyObject for atualizado. A propriedade de dependência específica que mudou é relatada os dados do evento.

(Herdado de DependencyObject)
ReadLocalValue(DependencyProperty)

Retorna o valor local de uma propriedade de dependência, local, se houver.

(Herdado de DependencyObject)
SetCurrentValue(DependencyProperty, Object)

Define o valor da propriedade de dependência sem alterar a origem do valor.

(Herdado de DependencyObject)
SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência, especificada pelo identificador da propriedade de dependência.

(Herdado de DependencyObject)
SetValue(DependencyPropertyKey, Object)

Define o valor de uma propriedade de dependência somente leitura, especificada pelo identificador DependencyPropertyKey da propriedade de dependência.

(Herdado de DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Retorna um valor que indica se os processos de serialização devem serializar o valor da propriedade de dependência fornecida.

(Herdado de DependencyObject)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
VerifyAccess()

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

(Herdado de DispatcherObject)

Aplica-se a

Confira também