https://learn.microsoft.com/zh-cn/dotnet/maui/fundamentals/gestures/tap?view=net-maui-7.0
.NET 多平台应用 UI (.NET MAUI) 点击手势识别器用于点击检测,并与 类一起 TapGestureRecognizer 实现。 此类定义了以下属性:
Buttons,属于 类型 ButtonsMask,用于定义主要或辅助鼠标按钮或两者是否在 Mac Catalyst 和 Windows 上触发手势。 有关详细信息,请参阅 定义按钮掩码。
Command,属于 类型 ICommand,在识别点击时执行。
CommandParameter,属于 object 类型,是传递给 Command 的参数。
NumberOfTapsRequired,类型 int为 ,表示识别点击手势所需的点击数。 此属性的默认值为 1。
这些属性由 BindableProperty 对象提供支持;也就是说,它们可以作为数据绑定的目标,并能进行样式设置。
类 TapGestureRecognizer 还定义在 Tapped 识别点击时引发的事件。 TappedEventArgs事件附带Tapped的对象定义 类型的Parameter属性,该属性object指示属性CommandParameter传递的值(如果已定义)。 对象 TappedEventArgs 还定义 属性 Buttons 和 GetPosition 方法。 属性 Buttons 的类型为 ButtonsMask,可用于确定主鼠标按钮还是辅助鼠标按钮触发了 Mac Catalyst 和 Windows 上的手势识别器。 方法 GetPosition 返回一个 Point? 对象,该对象表示检测到点击手势的位置。 有关按钮掩码的详细信息,请参阅 定义按钮掩码。 有关 方法的详细信息 GetPosition ,请参阅 获取手势位置。
警告
TapGestureRecognizer在 Windows 上无法识别多次双击。
创建 TapGestureRecognizer
若要使 识别 View 点击手势,请创建 对象 TapGestureRecognizer ,处理 Tapped 事件,并将新的手势识别器添加到视图上的 GestureRecognizers 集合。 下面的代码示例演示 TapGestureRecognizer 附加到 的 Image:
XAML
复制
<Image Source="dotnet_bot.png">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="OnTapGestureRecognizerTapped"
NumberOfTapsRequired="2" ></TapGestureRecognizer>
</Image.GestureRecognizers>
</Image>
TapGestureRecognizer tapGestureRecognizer = new TapGestureRecognizer();
tapGestureRecognizer.Tapped += (s, e) =>
{
// Handle the tap
};
Image image = new Image();
image.GestureRecognizers.Add(tapGestureRecognizer);