我有一个MapControl,并在地图中心显示了一个MapIcon,我每秒更新一次并再次居中。这很好用。
但是现在,我试图禁用MapControl的所有手势和触摸事件,但均未成功。我最接近完成此操作的操作是禁用所有四个InteractionMode(如PanInteractionMode)。但是,如果尝试用两根手指拖动地图,它仍然会被拖动,这是不可接受的。
最重要的是,MapControl位于Pivot控件内,我想将MapControl事件路由到Pivot,以便它也可以检测地图上的滑动手势。
我做梦太多了吗?
最佳答案
将以下四种交互模式设置为Disabled
时,将无法再与地图进行交互。我正在使用Windows 10 Creators Update。
但是即使使用它们并将IsHitTestVisible
设置为False
,MapControl
仍会吞噬任何输入。解决方法是覆盖透明的Rectangle
。这样,在Pivot
上滑动即可再次起作用。
<PivotItem Header="PivotItem 0">
<Grid>
<Maps:MapControl PanInteractionMode="Disabled"
RotateInteractionMode="Disabled"
TiltInteractionMode="Disabled"
ZoomInteractionMode="Disabled"
IsHitTestVisible="False" />
<Rectangle Fill="Transparent" />
</Grid>
</PivotItem>