在 3D 视图中,PointerMoved 事件不会在 MapControl 上触发

问题描述

PointerMoved 事件在 MapControl 是 3D 视图时不会触发,但当返回到 2D 或天顶视图时会再次触发。

在天顶视图时,只要鼠标移到地图控件上就会触发事件。

在 3D 视图中,仅当鼠标移到地图上的某些图像控件上时才会触发事件。在地图上移动不会触发事件。

我不知道为什么不触发或者是什么阻止触发,如果它是由我的代码引起的(在这种情况下,可能是什么原因?)。

解决方法

如果透明覆盖解决方案导致问题,可以使用计时器自行滚动并直接获取指针位置:

var pointerPosition = Windows.UI.Core.CoreWindow.GetForCurrentThread().PointerPosition;

有关详细信息,请参阅 this question

计时器将计算每个刻度的指针位置增量,如果它高于阈值,则触发一个事件。