繁体   English   中英

触摸事件拦截和路由

[英]Touch events interception and routing

我有一个MapControl,并在地图中心显示了一个MapIcon,我每秒更新一次并再次居中。 这很好用。

但是现在,我试图禁用MapControl的所有手势和触摸事件,但均未成功。 我最接近完成此操作的操作是禁用所有四个InteractionMode(如PanInteractionMode)。 但是,如果尝试用两根手指拖动地图,它仍然会被拖动,这是不可接受的。

最重要的是,MapControl位于Pivot控件内,我想将MapControl事件路由到Pivot,以便它也可以检测地图上的滑动手势。

我做梦太多了吗?

将以下四种交互模式设置为Disabled ,我将无法再与地图交互。 我正在使用Windows 10 Creators Update。

但是即使使用它们并将IsHitTestVisible设置为FalseMapControl仍会吞下任何输入。 解决方法是覆盖一个透明的 Rectangle 这样,在“ Pivot上的滑动将再次起作用。

<PivotItem Header="PivotItem 0">
    <Grid>
        <Maps:MapControl PanInteractionMode="Disabled"
                         RotateInteractionMode="Disabled"
                         TiltInteractionMode="Disabled"
                         ZoomInteractionMode="Disabled"
                         IsHitTestVisible="False" />
        <Rectangle Fill="Transparent" />
    </Grid>
</PivotItem>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM