DataTrigger クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
条件が満たされたときに適用される 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 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 プロパティによって名前が付けられたバインドがValueと等しくなるときに適用されるSetter オブジェクトの一覧を取得します。 |
TargetType |
この TriggerBase オブジェクトを添付できるオブジェクトの型。 (継承元 TriggerBase) |
Value |
セッターを適用する、Binding プロパティによって指定されたバインドの値を取得または設定します。 |
メソッド
イベント
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) |
プロパティにバインドを作成し、適用します。 |
SetBinding<TSource,TProperty>(BindableObject, BindableProperty, Func<TSource,TProperty>, BindingMode, IValueConverter, Object, String, Object, Object, Object) |
ソース オブジェクトのプロパティとターゲット オブジェクトのプロパティの間にバインディングを作成します。 |
適用対象
.NET MAUI