触摸两个屏幕元素windows 10个通用

touch two screen elements windows 10 universal

有人要求我创建一个功能,要求您同时按下触摸界面的两个独立区域(按钮)。我一直无法确定这是否可行(好google)

我假设你可以简单地拦截 touchstart 事件,如果设备支持多点触控......并以这种方式挂钩,但我没有尝试过这个,我不知道是否第二个 touchstart 会被解雇吗?

有人有这方面的经验吗?

可以同时通过触摸交互操作两个元素。但是,UWP 中没有 touchstart 事件。相反,您可能需要使用 Manipulation events。以下是一个简单的示例:

XAML:

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <Rectangle Name="BlueRectangle"
           Width="200" Height="200" Fill="Blue"
           ManipulationMode="All" HorizontalAlignment="Left" VerticalAlignment="Top" />
    <Rectangle Name="RedRectangle"
           Width="200" Height="200" Fill="Red"
           ManipulationMode="All" HorizontalAlignment="Right" VerticalAlignment="Bottom" />
</Grid>

Code-Dehind:

public sealed partial class MainPage : Page
{
    private TranslateTransform dragBlueTranslation;
    private TranslateTransform dragRedTranslation;

    public MainPage()
    {
        this.InitializeComponent();

        dragBlueTranslation = new TranslateTransform();

        BlueRectangle.RenderTransform = this.dragBlueTranslation;

        BlueRectangle.ManipulationDelta += (s, e) =>
        {
            dragBlueTranslation.X += e.Delta.Translation.X;
            dragBlueTranslation.Y += e.Delta.Translation.Y;
        };

        dragRedTranslation = new TranslateTransform();

        RedRectangle.RenderTransform = this.dragRedTranslation;

        RedRectangle.ManipulationDelta += (s, e) =>
        {
            dragRedTranslation.X += e.Delta.Translation.X;
            dragRedTranslation.Y += e.Delta.Translation.Y;
        };
    }
}

如果你只需要检测压力,你可以尝试Tapped event. For more info, please see Touch interactions