MultiTrigger 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示属性和绑定条件列表的类,以及满足列表中所有条件时应用的资源库列表。
public ref class MultiTrigger sealed : Microsoft::Maui::Controls::TriggerBase
[Microsoft.Maui.Controls.ContentProperty("Setters")]
public sealed class MultiTrigger : Microsoft.Maui.Controls.TriggerBase
[<Microsoft.Maui.Controls.ContentProperty("Setters")>]
type MultiTrigger = class
inherit TriggerBase
Public NotInheritable Class MultiTrigger
Inherits TriggerBase
- 继承
- 属性
注解
开发人员可以使用 a MultiTrigger 与通过使用 Trigger 对象包含它的控件上的属性值进行比较,或使用对象对任何绑定属性(包括封闭控件上的属性值) BindingCondition 进行比较。 这些可以在同一 Conditions 列表中混合。
下面的 XML 示例在添加到具有正确项目命名空间的 Microsoft.Maui.Controls 应用中时,会创建一个 UI,指示用户键入机密并切换开关以检查机密是否正确。 如果用户输入“文本颜色为绿色”,并切换到 Switch 其 On
位置,则用户键入的文本变为 Entry 绿色。 如果文本被更改为机密以外的其他内容或切换为其 Off
位置,则文本将返回到默认颜色
<?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:PropertyConditionDemo"
x:Class="PropertyConditionDemo.PropertyConditionDemoPage">
<StackLayout VerticalOptions="Center">
<Label Text="Do you know the secret?"
VerticalOptions="Center"
HorizontalOptions="Center" />
<Entry Placeholder="Type the secret!"
VerticalOptions="Center"
HorizontalOptions="Center">
<Entry.Triggers>
<MultiTrigger TargetType="Entry" >
<MultiTrigger.Conditions>
<PropertyCondition Property="Text" Value="The text color is green" />
<BindingCondition Binding="{Binding Source={x:Reference checkSecret},
Path=IsToggled}"
Value="true" />
</MultiTrigger.Conditions>
<Setter Property="TextColor"
Value="Color.Green" />
</MultiTrigger>
</Entry.Triggers>
</Entry>
<Label Text="Check the secret?"
VerticalOptions="Center"
HorizontalOptions="Center" />
<Switch x:Name="checkSecret"
VerticalOptions="Center"
HorizontalOptions="Center" />
</StackLayout>
</ContentPage>
构造函数
MultiTrigger(Type) |
初始化一个新 MultiTrigger 实例。 |
属性
BindingContext |
获取或设置一个对象,该对象包含由属于此 BindableObject属性的绑定属性所面向的属性。 这是一种可绑定属性。 (继承自 BindableObject) |
Conditions |
获取必须满足的条件列表,以便调用 Setters 列表中的资源库。 |
Dispatcher |
获取创建此可绑定对象时可用的调度程序,否则会尝试查找最近的可用调度程序(可能是窗口的/应用)。 (继承自 BindableObject) |
EnterActions |
获取将在满足触发条件时调用的 TriggerAction 对象的列表。 忽略 EventTrigger 类。 (继承自 TriggerBase) |
ExitActions |
获取在不再满足触发条件时调用的 TriggerAction 对象的列表。 忽略 EventTrigger 类。 (继承自 TriggerBase) |
IsSealed |
获取一个值,该值指示触发器是否密封。 (继承自 TriggerBase) |
Setters |
获取在满足 Conditions 属性中的条件列表时将应用的 Setter 对象的列表。 |
TargetType |
TriggerBase 对象可附加到的对象类型。 (继承自 TriggerBase) |
方法
事件
BindingContextChanged |
当 BindingContext 属性的值更改时发生。 (继承自 BindableObject) |
PropertyChanged |
在属性值更改时发生。 (继承自 BindableObject) |
PropertyChanging |
在属性值更改时发生。 (继承自 BindableObject) |
显式接口实现
IDynamicResourceHandler.SetDynamicResource(BindableProperty, String) |
表示属性和绑定条件列表的类,以及满足列表中所有条件时应用的资源库列表。 (继承自 BindableObject) |
扩展方法
GetPropertyIfSet<T>(BindableObject, BindableProperty, T) |
表示属性和绑定条件列表的类,以及满足列表中所有条件时应用的资源库列表。 |
SetAppTheme<T>(BindableObject, BindableProperty, T, T) |
表示属性和绑定条件列表的类,以及满足列表中所有条件时应用的资源库列表。 |
SetAppThemeColor(BindableObject, BindableProperty, Color, Color) |
表示属性和绑定条件列表的类,以及满足列表中所有条件时应用的资源库列表。 |
SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String) |
创建绑定并将其应用到属性。 |
SetBinding<TSource,TProperty>(BindableObject, BindableProperty, Func<TSource,TProperty>, BindingMode, IValueConverter, Object, String, Object, Object, Object) |
在源对象上的属性和目标对象的属性之间创建绑定。 |