MapControl上的MapHolding操作不起作用......一种解决方法?

时间:2018-02-16 11:32:23

标签: c# events uwp maps uwp-maps

自2015年以来,持有方法似乎不起作用:
Win10 App - Holding & Releasing the map to manipulate an element on the interface

或者我只是不知道如何使用它,无论如何我需要管理一个持有PC或移动地图的用户。

我的地图就像一个导航器,它在移动时跟随用户位置,但是当用户使用手势查看周围的地图时,我必须停止用户图钉的.center位置。

但我无法找到用户移动地图的方法。文档告诉使用hold事件 https://docs.microsoft.com/it-it/windows/uwp/maps-and-location/display-maps

但是我在PC上尝试过,我的应用程序没有进入举办活动。

我已尝试过所有其他事件,只有maptapped和actualcamerachanged有效。 但我不知道如何区别于用户移动或地图。中心移动应用程序。

有任何帮助吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

MapHolding在指针向下时不会立即触发。它会在按下后触发并在延迟后长时间保持,并且仅在地图未移动时才会触发。它用于显示上下文菜单(如右键单击)。 ActualCameraChanging事件的MapActualCameraChangingEventArgs应该告诉您地图是由于用户交互还是由于以编程方式更改而移动。

答案 1 :(得分:0)

我解决了一些WinMerge并尝试了一些

当用户尝试移动地图时,你可以在发件人中找到FocusState.Pointer,如果没有map.center,你会得到一个FocusState.Unfocused由发件人

private void Mappe_ActualCameraChanged(MapControl sender, MapActualCameraChangedEventArgs args)
         {
            if (sender.FocusState == FocusState.Pointer)
            {

            }

        }
相关问题