【问题标题】:MapControl get tapped location UWPMapControl 获取点击位置 UWP
【发布时间】:2016-07-31 13:51:15
【问题描述】:

我的应用中有一个 MapControl,我想检索用户录制的点的坐标。

<Maps:MapControl    Grid.Row="0" 
                    ColorScheme="Light" 
                    Margin="10" 
                    x:Name="mainMap" 
                    HorizontalAlignment="Stretch"
                    VerticalAlignment="Stretch"
                    Tapped="mainMap_Tapped"
                    MapElementClick="mainMap_MapElementClick"
                />

但我不知道如何从活动private void mainMap_Tapped(object sender, TappedRoutedEventArgs e)获得这个

【问题讨论】:

    标签: c# uwp uwp-xaml uwp-maps


    【解决方案1】:

    要在 MapControl 中获取被点击的位置,我们可以使用 MapControl.MapTapped event。当用户点击 MapControl 或用鼠标左键单击它时会发生此事件。 MapInputEventArgs 的实例为此事件提供数据。在MapInputEventArgs 中,我们可以使用MapInputEventArgs.Location property 获取位置。例如:

    在 XAML 中:

    <Maps:MapControl x:Name="mainMap"
                     Grid.Row="0"
                     Margin="10"
                     HorizontalAlignment="Stretch"
                     VerticalAlignment="Stretch"
                     ColorScheme="Light"
                     MapTapped="mainMap_MapTapped"
                     MapElementClick="mainMap_MapElementClick" />
    

    在代码隐藏中:

    private void mainMap_MapTapped(Windows.UI.Xaml.Controls.Maps.MapControl sender, Windows.UI.Xaml.Controls.Maps.MapInputEventArgs args)
    {
        var tappedGeoPosition = args.Location.Position;
        string status = "MapTapped at \nLatitude:" + tappedGeoPosition.Latitude + "\nLongitude: " + tappedGeoPosition.Longitude;
        rootPage.NotifyUser( status, NotifyType.StatusMessage);
    }
    

    【讨论】:

    • 我们可以获取举办活动的位置吗?
    【解决方案2】:
    GeoPoint geoPt = this.mainMap.Layers[0].ScreenToGeoPoint(e.GetPosition(this.mapControl1)); 
    

    应该给你地理点。

    【讨论】:

    • 我收到了Layers[0] 下划线表示没有方法
    • @SvenBorden 那是因为您使用括号“()”而不是括号“[]”,这意味着您尝试调用方法而不是引用索引
    • 它还说没有“层”的定义,也没有方法扩展“层”接受 MapControl 类型的第一个参数(顺便说一句,非常感谢)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-26
    相关资源
    最近更新 更多