绑定到通用应用程序中的地图

时间:2014-07-16 12:20:56

标签: c# xaml bing-maps win-universal-app

我正在使用通用应用,而对于Windows应用商店版本,这将根据Ricky Brunditt's blog

中的代码包装Bing Maps控件

出于测试目的,我尝试通过XAML添加图钉,其中包含:

<Maps:MapControl ZoomLevel="14" MapServiceToken="{StaticResource MapServiceToken}" Width="630" Height="310" Center="{Binding Converter={StaticResource GeopointConverter}, Mode=OneWay}">
    <Maps:MapControl.Children>
        <BingMaps:Pushpin>
             <BingMaps:MapLayer.Position>
                 <BingMaps:Location Latitude="{Binding Latitude, Mode=OneWay}" Longitude="{Binding Longitude, Mode=OneWay}" />
             </BingMaps:MapLayer.Position>
        </BingMaps:Pushpin>
    </Maps:MapControl.Children>
</Maps:MapControl>

这确实会将针脚添加到正确的位置,但如果我平移地图,则针脚不会平移。我可能只是错过了一些愚蠢的东西,但为什么没有地图上的针脚?

1 个答案:

答案 0 :(得分:1)

Ricky的示例继承自网格,并将地图控件插入其中 - 这意味着任何子节点都是Grid的子节点,而不是MapControl。

一种选择是使用类似的方式公开封装控件的Children属性:

public MapUIElementCollection MapChildren
{
    get
    {
        return _map.Children;
    }
}