TriggerAction<T> 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在满足触发条件时所执行的用户定义操作的泛型基类。
public abstract class TriggerAction<T> : Xamarin.Forms.TriggerAction where T : BindableObject
type TriggerAction<'T (requires 'T :> BindableObject)> = class
inherit TriggerAction
类型参数
- T
作用于的类型 Invoke(T) 。
- 继承
注解
以下示例演示开发人员如何使用触发器响应事件,并使用类更新控件属性 TriggerAction<T> 的值。 该示例提示用户回答有关文本颜色的问题,然后在用户键入“文本颜色为红色”时调用 ColorTriggerAction
以将文本变为红色。 开发人员应注意,虽然此示例不会在用户继续编辑字符串时将文本更改回默认颜色,但开发人员可以另外实现并指定退出操作以获取该结果。
在 命名空间中 TriggerDemo
定义了下面的 ColorTriggerAction 类:
public class ColorTriggerAction : TriggerAction<Entry>
{
protected override void Invoke(Entry sender)
{
sender.TextColor = Color.Red;
}
}
开发人员可以使用下面的 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="What color is "The text"?"
VerticalOptions="Center"
HorizontalOptions="Center" />
<Entry Placeholder="Type answer here."
VerticalOptions="Center"
HorizontalOptions="Center"
BackgroundColor="White">
<Entry.Triggers>
<Trigger TargetType="Entry"
Property="Text"
Value="The text is red" >
<Trigger.EnterActions>
<local:ColorTriggerAction />
</Trigger.EnterActions>
</Trigger>
</Entry.Triggers>
</Entry>
</StackLayout>
</ContentPage>
构造函数
TriggerAction<T>() |
创建 TriggerAction<T> 类的新实例。 |
属性
AssociatedType |
获取 TriggerAction 可与之关联的对象类型。 (继承自 TriggerAction) |
方法
Invoke(Object) |
应用程序开发者可重写此方法以提供在满足触发条件时所要执行的操作。 |
Invoke(T) |
应用程序开发者可重写此方法以提供在满足触发条件时所要执行的操作。 |