TriggerBase Classe

Definição

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

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

Existem vários tipos diferentes de gatilhos: Trigger, MultiTrigger, EventTrigger, DataTrigger, e MultiDataTrigger.

A Trigger classe é o tipo mais simples de gatilhos. Um Trigger objeto permite-lhe aplicar alterações com base no valor de uma propriedade. Por exemplo, o exemplo seguinte mostra um nome Style disponível para Button os controlos. Define Style 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 precisar de aplicar alterações com base no estado de várias propriedades, pode usar o MultiTrigger. Para um exemplo, veja a MultiTrigger página.

A EventTrigger classe permite-te aplicar alterações quando ocorre um evento. O exemplo seguinte contém dois EventTrigger objetos, um dos quais ocorre quando o rato entra no elemento e o outro ocorre quando o rato sai do 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>

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

Observações

O modelo WPF styling e template permite-te especificar triggers dentro do teu Style, ControlTemplate e DataTemplate. Essencialmente, TriggerBase é a classe base para objetos que permitem aplicar alterações quando certas condições (como quando um determinado valor de propriedade se torna true, ou quando ocorre um evento).

Propriedades

Name Description
DependencyObjectType

Obtém o DependencyObjectType que envolve o tipo CLR desta instância.

(Herdado de DependencyObject)
Dispatcher

Percebe o Dispatcher que isto DispatcherObject está associado.

(Herdado de DispatcherObject)
EnterActions

Obtém uma coleção de TriggerAction objetos para aplicar quando o objeto de disparo se torna ativo. Esta característica não se aplica à EventTrigger classe.

ExitActions

Obtém uma coleção de TriggerAction objetos para aplicar quando o objeto gatilho se torna inativo. Esta característica não se aplica à EventTrigger classe.

IsSealed

Recebe um valor que indica se esta instância está atualmente selada (apenas leitura).

(Herdado de DependencyObject)

Métodos

Name Description
CheckAccess()

Determina se o thread que chama 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 DependencyProperty identificador.

(Herdado de DependencyObject)
ClearValue(DependencyPropertyKey)

Limpa o valor local de uma propriedade de apenas leitura. O imóvel a ser limpo é especificado por um DependencyPropertyKey.

(Herdado de DependencyObject)
CoerceValue(DependencyProperty)

Coage o valor da propriedade de dependência especificada. Isto é conseguido invocando qualquer CoerceValueCallback função especificada nos metadados da propriedade para a propriedade de dependência tal como existe na chamada DependencyObject.

(Herdado de DependencyObject)
Equals(Object)

Determina se um fornecido DependencyObject é equivalente à corrente DependencyObject.

(Herdado de DependencyObject)
GetHashCode()

Obtém um código de hash para isto DependencyObject.

(Herdado de DependencyObject)
GetLocalValueEnumerator()

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

(Herdado de DependencyObject)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetValue(DependencyProperty)

Devolve o valor efetivo atual de uma propriedade de dependência nesta instância de um DependencyObject.

(Herdado de DependencyObject)
InvalidateProperty(DependencyProperty)

Reavalia o valor efetivo da propriedade de dependência especificada.

(Herdado de DependencyObject)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Invocado sempre que o valor efetivo de qualquer propriedade de dependência disto DependencyObject for atualizado. A propriedade específica da dependência que mudou é reportada nos dados do evento.

(Herdado de DependencyObject)
ReadLocalValue(DependencyProperty)

Devolve o valor local de uma propriedade de dependência, se esta existir.

(Herdado de DependencyObject)
SetCurrentValue(DependencyProperty, Object)

Define o valor de uma propriedade de dependência sem alterar a sua fonte de valor.

(Herdado de DependencyObject)
SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência, especificado pelo seu identificador de propriedade de dependência.

(Herdado de DependencyObject)
SetValue(DependencyPropertyKey, Object)

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

(Herdado de DependencyObject)
ShouldSerializeProperty(DependencyProperty)

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

(Herdado de DependencyObject)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)
VerifyAccess()

Faz cumprir que o thread que chama tem acesso a este DispatcherObject.

(Herdado de DispatcherObject)

Aplica-se a

Ver também