Trigger クラス

定義

プロパティ値を適用するか、または条件付きでアクションを実行するトリガーを表します。Represents a trigger that applies property values or performs actions conditionally.

public ref class Trigger : System::Windows::TriggerBase, System::ComponentModel::ISupportInitialize, System::Windows::Markup::IAddChild
[System.Windows.Markup.ContentProperty("Setters")]
[System.Windows.Markup.XamlSetTypeConverter("ReceiveTypeConverter")]
public class Trigger : System.Windows.TriggerBase, System.ComponentModel.ISupportInitialize, System.Windows.Markup.IAddChild
type Trigger = class
    inherit TriggerBase
    interface IAddChild
    interface ISupportInitialize
Public Class Trigger
Inherits TriggerBase
Implements IAddChild, ISupportInitialize
継承
属性
実装

次の例は、Button コントロールで使用できる名前付き Style を示しています。The following example shows a named Style available to Button controls. Style は、IsPressed プロパティが trueときにボタンの Foreground プロパティを変更する Trigger 要素を定義します。The Style defines a Trigger element that changes the Foreground property of a button when the IsPressed property is true.

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

注釈

WPFWPF では、エンドユーザーの操作に対応するプロパティを定義します。たとえば、ユーザーがカーソルを UIElement または IsMouseOver の対応する ContentElementプロパティの上に置いたときに true に設定されている IsMouseOver プロパティなどです。defines properties that correspond to end-user actions, such as the IsMouseOver property that is set to true when the user hovers the cursor over a UIElement or the corresponding IsMouseOver property of a ContentElement. プロパティ値のエンドユーザーアクションを Trigger 要素と共に表すことで、WPFWPF スタイルで、エンドユーザーのアクションに基づいてプロパティ値を変更できるようになります。これらの操作はすべて、マークアップ内から行うことができます。Representing end-user actions in property values, along with the Trigger element, allows WPFWPF styles to change property values based on those end-user actions, all from within markup.

トリガーによって変更されたプロパティは、トリガーされた条件が満たされなくなると、自動的に以前の値にリセットされます。The properties changed by triggers are automatically reset to their previous value when the triggered condition is no longer satisfied. トリガーは、変更して元の状態に戻すことが期待される一時的な状態に対して最適化されています。たとえば、Button での IsPressedListBoxItemでの IsSelected です。Triggers are optimized for transient states which are expected to change and return to original state, such as IsPressed on Button and IsSelected on ListBoxItem. 対象の Property は依存関係プロパティである必要があります。The Property of interest must be a dependency property.

トリガーを意味のあるものにするには、TriggerPropertyValue の両方のプロパティを指定する必要があることに注意してください。Note that you must specify both the Property and Value properties on a Trigger for the trigger to be meaningful. プロパティの一方または両方が設定されていない場合は、例外がスローされます。If one or both of the properties are not set, an exception is thrown.

Trigger オブジェクトの Setters プロパティは Setter オブジェクトのみで構成できます。The Setters property of a Trigger object can only consist of Setter objects. Trigger オブジェクトに Setter 子を追加すると、Trigger オブジェクトの SetterBaseCollection に暗黙的に追加されます。Adding a Setter child to a Trigger object implicitly adds it to the SetterBaseCollection for the Trigger object. EventSetter オブジェクトはサポートされていません。EventSetter オブジェクトをサポートしているのは Style.Setters だけです。EventSetter objects are not supported; only Style.Setters supports EventSetter objects.

他の種類のトリガーもあります。There are other types of triggers. MultiTrigger を使用すると、複数のプロパティの状態に基づいて変更を適用できます。MultiTrigger allows you to apply changes based on the state of multiple properties. EventTrigger を使用すると、イベントの発生時に変更を適用できます。EventTrigger allows you to apply changes when an event occurs. DataTriggerMultiDataTrigger は、データバインドプロパティを対象としています。DataTrigger and MultiDataTrigger are for data-bound properties.

コンストラクター

Trigger() Trigger クラスの新しいインスタンスを初期化します。Initializes a new instance of the Trigger class.

プロパティ

DependencyObjectType

このインスタンスの DependencyObjectType 型をラップする CLRCLR を取得します。Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

(継承元 DependencyObject)
Dispatcher

この Dispatcher が関連付けられている DispatcherObject を取得します。Gets the Dispatcher this DispatcherObject is associated with.

(継承元 DispatcherObject)
EnterActions

トリガー オブジェクトがアクティブになったときに適用する TriggerAction オブジェクトのコレクションを取得します。Gets a collection of TriggerAction objects to apply when the trigger object becomes active. このプロパティは EventTrigger クラスには適用されません。This property does not apply to the EventTrigger class.

(継承元 TriggerBase)
ExitActions

トリガー オブジェクトが非アクティブになったときに適用する TriggerAction オブジェクトのコレクションを取得します。Gets a collection of TriggerAction objects to apply when the trigger object becomes inactive. このプロパティは EventTrigger クラスには適用されません。This property does not apply to the EventTrigger class.

(継承元 TriggerBase)
IsSealed

このインスタンスが現在シールされている (読み取り専用である) かどうかを示す値を取得します。Gets a value that indicates whether this instance is currently sealed (read-only).

(継承元 DependencyObject)
Property

トリガーの Value プロパティと比較される値を返すプロパティを取得または設定します。Gets or sets the property that returns the value that is compared with the Value property of the trigger. この比較は参照の等価性チェックです。The comparison is a reference equality check.

Setters

指定した条件が満たされたときに適用するプロパティ値を表す Setter オブジェクトのコレクションを取得します。Gets a collection of Setter objects, which describe the property values to apply when the specified condition has been met.

SourceName

関連付けられている setter を適用するプロパティを含むオブジェクトの名前を取得または設定します。Gets or sets the name of the object with the property that causes the associated setters to be applied.

Value

要素のプロパティ値と比較する値を取得または設定します。Gets or sets the value to be compared with the property value of the element. この比較は参照の等価性チェックです。The comparison is a reference equality check.

メソッド

CheckAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるかどうかを確認します。Determines whether the calling thread has access to this DispatcherObject.

(継承元 DispatcherObject)
ClearValue(DependencyProperty)

プロパティのローカル値をクリアします。Clears the local value of a property. クリアするプロパティは DependencyProperty 識別子で指定されます。The property to be cleared is specified by a DependencyProperty identifier.

(継承元 DependencyObject)
ClearValue(DependencyPropertyKey)

読み取り専用プロパティのローカル値を消去します。Clears the local value of a read-only property. 消去するプロパティは、DependencyPropertyKey で指定します。The property to be cleared is specified by a DependencyPropertyKey.

(継承元 DependencyObject)
CoerceValue(DependencyProperty)

指定した依存関係プロパティの値を強制します。Coerces the value of the specified dependency property. これは、呼び出し元の CoerceValueCallback の依存関係プロパティのプロパティ メタデータで指定されている DependencyObject 関数を呼び出すことによって実現されます。This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(継承元 DependencyObject)
Equals(Object)

指定した DependencyObject が現在の DependencyObject と等しいかどうかを判断します。Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(継承元 DependencyObject)
GetHashCode()

この DependencyObject のハッシュ コードを取得します。Gets a hash code for this DependencyObject.

(継承元 DependencyObject)
GetLocalValueEnumerator()

どの依存関係プロパティがこの DependencyObject 上にローカルに設定された値を持つかを確認するための、専用の列挙子を作成します。Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(継承元 DependencyObject)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
GetValue(DependencyProperty)

DependencyObject のこのインスタンスにある依存関係プロパティの現在の有効値を返します。Returns the current effective value of a dependency property on this instance of a DependencyObject.

(継承元 DependencyObject)
InvalidateProperty(DependencyProperty)

指定した依存関係プロパティの有効値を再評価します。Re-evaluates the effective value for the specified dependency property.

(継承元 DependencyObject)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

この DependencyObject の依存関係プロパティの有効値が更新された場合に必ず呼び出されます。Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. 変更された特定の依存関係プロパティは、イベント データで報告されます。The specific dependency property that changed is reported in the event data.

(継承元 DependencyObject)
ReadLocalValue(DependencyProperty)

ローカルの依存関係プロパティの値を返します (存在する場合)。Returns the local value of a dependency property, if it exists.

(継承元 DependencyObject)
ReceiveTypeConverter(Object, XamlSetTypeConverterEventArgs)

型コンバーターによって Trigger オブジェクトのプロパティの値が設定された場合の処理を行います。Handles cases where a type converter provides a value for a property of a Trigger object.

SetCurrentValue(DependencyProperty, Object)

依存関係プロパティ値のソースを変更せずにその値を設定します。Sets the value of a dependency property without changing its value source.

(継承元 DependencyObject)
SetValue(DependencyProperty, Object)

依存関係プロパティ識別子を指定して、該当する依存関係プロパティのローカル値を設定します。Sets the local value of a dependency property, specified by its dependency property identifier.

(継承元 DependencyObject)
SetValue(DependencyPropertyKey, Object)

依存関係プロパティの DependencyPropertyKey 識別子で指定した読み取り専用の依存関係プロパティのローカル値を設定します。Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(継承元 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

シリアル化プロセスが、指定された依存関係プロパティの値をシリアル化する必要があるかどうかを示す値を返します。Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(継承元 DependencyObject)
ToString()

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)
VerifyAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるように強制します。Enforces that the calling thread has access to this DispatcherObject.

(継承元 DispatcherObject)

明示的なインターフェイスの実装

IAddChild.AddChild(Object)

子オブジェクトを追加します。Adds a child object.

IAddChild.AddText(String)

オブジェクトにノードのテキスト コンテンツを追加します。Adds the text content of a node to the object.

ISupportInitialize.BeginInit()

初期化が開始されることをオブジェクトに通知します。Signals the object that initialization is starting.

ISupportInitialize.EndInit()

初期化が完了したことをオブジェクトに通知します。Signals the object that initialization is complete.

適用対象

こちらもご覧ください