我想知道,如果有可能从特定位置找出geoCoordinate。我有以下代码:
delMap.Heading = 0;
delMap.CartographicMode = MapCartographicMode.Road;
delMap.LandmarksEnabled = true;
delMap.ZoomLevel = 8;
delMap.Center = new GeoCoordinate(47.6097, -122.3331);
MapOverlay overlay = new MapOverlay
{
GeoCoordinate = delMap.Center,
Content = new Ellipse
{
Fill = new SolidColorBrush(Colors.Red),
Width = 10,
Height = 10
}
};
MapLayer layer = new MapLayer();
layer.Add(overlay);
delMap.Layers.Add(layer);
它在delmap.Center位置显示一个点,就像expectet一样。但是现在,如果我只知道地理位置的名称,我需要找出如何使地图居中。例如“纽约”。
答案 0 :(得分:1)
地图没有“纽约”的概念,你只能在地理坐标处居中。您需要获取给定位置的坐标。
要做到这一点,要么使用Google或Bing地图构建位置坐标列表(如果您有一个有限且已知的位置数量),要么找到一个能为您提供给定名称坐标的Web服务。
编辑:您需要的是geocoding。以下是Google API参考:https://developers.google.com/maps/documentation/geocoding/。