EventTrigger 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示触发事件以及在引发事件时将调用的 TriggerAction 对象列表的类。
[Xamarin.Forms.ContentProperty("Actions")]
public sealed class EventTrigger : Xamarin.Forms.TriggerBase
type EventTrigger = class
inherit TriggerBase
- 继承
- 属性
注解
以下示例演示了开发人员如何使用事件触发器来响应事件并更新控件属性的值。
在 ColorTriggerAction
命名空间中 TriggerDemo
定义了以下类:
public class ColorTriggerAction : TriggerAction<Entry>
{
protected override void Invoke(Entry sender)
{
Color[] color ={ Color.Red,
Color.Orange,
Color.Yellow,
Color.Green,
Color.Blue,
Color.Indigo,
Color.Violet };
sender.TextColor = color[sender.Text.Length % color.Length];
}
}
开发人员可以使用下面的 XAML 创建一个页面, Entry 该页面在用户输入文本时通过彩虹的颜色循环显示文本区域的颜色。
<?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="Do you see colors?"
VerticalOptions="Center"
HorizontalOptions="Center" />
<Entry Placeholder="Type stuff here."
VerticalOptions="Center"
HorizontalOptions="Center"
BackgroundColor="Black">
<Entry.Triggers>
<EventTrigger Event="TextChanged" >
<local:ColorTriggerAction />
</EventTrigger>
</Entry.Triggers>
</Entry>
</StackLayout>
</ContentPage>
构造函数
EventTrigger() |
创建一个新的 EventTrigger 实例。 |
属性
Actions |
获取在引发由 Event 属性标识的事件时将调用的 TriggerAction 对象的列表。 |
BindingContext |
获取或设置对象,该对象包含将被属于此 BindableObject 的绑定属性设定为目标的属性。 (继承自 BindableObject) |
Dispatcher |
表示触发事件以及在引发事件时将调用的 TriggerAction 对象列表的类。 (继承自 BindableObject) |
EnterActions |
获取将在满足触发条件时调用的 TriggerAction 对象的列表。 忽略 EventTrigger 类。 (继承自 TriggerBase) |
Event |
获取或设置将导致调用 Actions 中包含的操作的事件名称。 |
ExitActions |
获取在不再满足触发条件时调用的 TriggerAction 对象的列表。 忽略 EventTrigger 类。 (继承自 TriggerBase) |
IsSealed |
获取一个值,该值指示触发器是否密封。 (继承自 TriggerBase) |
TargetType |
TriggerBase 对象可附加到的对象类型。 (继承自 TriggerBase) |
方法
事件
BindingContextChanged |
只要 BindingContext 属性更改就会引发。 (继承自 BindableObject) |
PropertyChanged |
在属性已更改时引发。 (继承自 BindableObject) |
PropertyChanging |
在属性将要更改时引发。 (继承自 BindableObject) |
显式接口实现
IDynamicResourceHandler.SetDynamicResource(BindableProperty, String) |
供 Xamarin.Forms 平台内部使用。 (继承自 BindableObject) |
扩展方法
GetPropertyIfSet<T>(BindableObject, BindableProperty, T) |
表示触发事件以及在引发事件时将调用的 TriggerAction 对象列表的类。 |
SetAppThemeColor(BindableObject, BindableProperty, Color, Color) |
表示触发事件以及在引发事件时将调用的 TriggerAction 对象列表的类。 |
SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String) |
创建绑定并将其应用到属性。 |
SetBinding<TSource>(BindableObject, BindableProperty, Expression<Func<TSource,Object>>, BindingMode, IValueConverter, String) |
已过时.
通过表达式创建并应用绑定。 |
SetOnAppTheme<T>(BindableObject, BindableProperty, T, T) |
表示触发事件以及在引发事件时将调用的 TriggerAction 对象列表的类。 |