次の方法で共有


DataTrigger クラス

定義

条件が満たされたときに適用される Setter オブジェクトのリストと共に、任意のバインドの条件を表すクラス。

public ref class DataTrigger sealed : Microsoft::Maui::Controls::TriggerBase, Microsoft::Maui::Controls::Xaml::IValueProvider
[Microsoft.Maui.Controls.ContentProperty("Setters")]
[Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider]
public sealed class DataTrigger : Microsoft.Maui.Controls.TriggerBase, Microsoft.Maui.Controls.Xaml.IValueProvider
[<Microsoft.Maui.Controls.ContentProperty("Setters")>]
[<Microsoft.Maui.Controls.Xaml.AcceptEmptyServiceProvider>]
type DataTrigger = class
    inherit TriggerBase
    interface IValueProvider
Public NotInheritable Class DataTrigger
Inherits TriggerBase
Implements IValueProvider
継承
属性
実装

注釈

クラスは DataTrigger 、他のコントロールの値と、追加先のコントロールのプロパティをチェックするのに適しています。 つまり、既定のバインド コンテキストは、追加先のコントロールです。

次の XML の例では、"テキストの色は緑色です" というシークレットを入力するようにユーザーに求めます。 ユーザーが "The" と入力すると、Entry テキストの色が赤に変わります。 ユーザーがシークレットを完了すると、ラベル テキストが緑色に変わります。 ユーザーがシークレットを編集すると、コードは既定の色に戻されます。 この例では、外側のコントロール (Entry from Entry)、およびアービタリ コントロール (Label からのエントリ) にバインドする方法を示します。

<?xml version="1.0" encoding="utf-8"?>
<ContentPage    xmlns="http://xamarin.com/schemas/2014/forms"
                xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
                xmlns:local="clr-namespace:TriggerDemo"
                x:Class="TriggerDemo.TriggerDemoPage">
<StackLayout VerticalOptions="Center">
<Label Text="Can you tell me the secret?" VerticalOptions="Center" HorizontalOptions="Center">
<Label.Triggers>
<DataTrigger TargetType="Label"
                    Binding="{Binding Source={x:Reference checkEntry},
                                      Path=Text}"
                    Value="The text color is green">
<Setter Property="TextColor" Value="Color.Green" />
</DataTrigger>
</Label.Triggers>
</Label>
<Entry Placeholder="Type the secret here." x:Name="checkEntry" VerticalOptions="Center" HorizontalOptions="Center">
<Entry.Triggers>
<DataTrigger TargetType="Entry"
                    Binding="{Binding Text}"
                    Value="The">
<Setter Property="TextColor" Value="Red" />
</DataTrigger>
</Entry.Triggers>
</Entry>
</StackLayout>
</ContentPage>

コンストラクター

DataTrigger(Type)

新しい DataTrigger インスタンスを初期化します。

プロパティ

Binding

セッターを呼び出すタイミングを決定するために Value と比較される値を持つバインドを取得または設定します。

BindingContext

この BindableObjectに属するバインドされたプロパティの対象となるプロパティを含むオブジェクトを取得または設定します。 これはバインド可能なプロパティです。

(継承元 BindableObject)
Dispatcher

このバインド可能なオブジェクトが作成されたときに使用可能だったディスパッチャーを取得します。それ以外の場合は、使用可能な最も近いディスパッチャー (おそらくウィンドウ/アプリ) を検索しようとします。

(継承元 BindableObject)
EnterActions

トリガー条件が満たされたときに呼び出される TriggerAction オブジェクトの一覧を取得します。 EventTrigger クラスの場合、無視されます。

(継承元 TriggerBase)
ExitActions

トリガー条件が満たされなくなった後に呼び出される TriggerAction オブジェクトの一覧を取得します。 EventTrigger クラスの場合、無視されます。

(継承元 TriggerBase)
IsSealed

トリガーが封印されているかどうかを示す値を取得します。

(継承元 TriggerBase)
Setters

プロパティによって名前が付けられたバインドが と等しい場合に適用されるオブジェクトのBinding一覧SetterValue取得します。

TargetType

この TriggerBase オブジェクトを添付できるオブジェクトの型。

(継承元 TriggerBase)
Value

セッターを適用する、Binding プロパティによって指定されたバインドの値を取得または設定します。

メソッド

ApplyBindings()

現在のすべてのバインディングを に BindingContext適用します。

(継承元 BindableObject)
ClearValue(BindableProperty)

バインド可能なプロパティに対して以前に設定された値をクリアします。

(継承元 BindableObject)
ClearValue(BindablePropertyKey)

バインド可能なプロパティに対して以前に設定された値をクリアします。その値は、そのキーによって識別されます。

(継承元 BindableObject)
CoerceValue(BindableProperty)

指定したバインド可能なプロパティの値を強制します。 これは、指定されたバインド可能なプロパティを BindableProperty.CoerceValueDelegate 呼び出すことによって行われます。

(継承元 BindableObject)
CoerceValue(BindablePropertyKey)

指定したバインド可能なプロパティの値を強制します。 これは、指定されたバインド可能なプロパティを BindableProperty.CoerceValueDelegate 呼び出すことによって行われます。

(継承元 BindableObject)
GetValue(BindableProperty)

指定されたバインド可能なプロパティに含まれる値を返します。

(継承元 BindableObject)
IsSet(BindableProperty)

バインド可能なプロパティが存在し、値が設定されているかどうかを判断します。

(継承元 BindableObject)
OnBindingContextChanged()

BindingContextChanged イベントを発生させます。

(継承元 BindableObject)
OnPropertyChanged(String)

PropertyChanged イベントを発生させます。

(継承元 BindableObject)
OnPropertyChanging(String)

PropertyChanging イベントを発生させます。

(継承元 BindableObject)
RemoveBinding(BindableProperty)

バインド可能なプロパティから、以前に設定したバインドを削除します。

(継承元 BindableObject)
SetBinding(BindableProperty, BindingBase)

バインド可能なプロパティにバインドを割り当てます。

(継承元 BindableObject)
SetValue(BindableProperty, Object)

指定したバインド可能なプロパティの値を設定します。

(継承元 BindableObject)
SetValue(BindablePropertyKey, Object)

指定したバインド可能なプロパティの値を設定します。

(継承元 BindableObject)
UnapplyBindings()

現在のコンテキストから現在のすべてのバインドを削除します。

(継承元 BindableObject)

イベント

BindingContextChanged

BindingContext プロパティの値が変化したときに発生します。

(継承元 BindableObject)
PropertyChanged

プロパティ値が変更するときに発生します。

(継承元 BindableObject)
PropertyChanging

プロパティ値が変更されようとしている場合に発生します。

(継承元 BindableObject)

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

IDynamicResourceHandler.SetDynamicResource(BindableProperty, String)

条件が満たされたときに適用される Setter オブジェクトのリストと共に、任意のバインドの条件を表すクラス。

(継承元 BindableObject)
IValueProvider.ProvideValue(IServiceProvider)

条件が満たされたときに適用される Setter オブジェクトのリストと共に、任意のバインドの条件を表すクラス。

拡張メソッド

GetPropertyIfSet<T>(BindableObject, BindableProperty, T)

条件が満たされたときに適用される Setter オブジェクトのリストと共に、任意のバインドの条件を表すクラス。

SetAppTheme<T>(BindableObject, BindableProperty, T, T)

条件が満たされたときに適用される Setter オブジェクトのリストと共に、任意のバインドの条件を表すクラス。

SetAppThemeColor(BindableObject, BindableProperty, Color, Color)

条件が満たされたときに適用される Setter オブジェクトのリストと共に、任意のバインドの条件を表すクラス。

SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String)

プロパティにバインドを作成し、適用します。

適用対象