创建一个控件,允许用户在地图上绘制圆圈并返回在该圆圈中找到的邮政编码

时间:2011-12-21 00:04:12

标签: c# winforms

我正在使用Windows Forms C#.Net 4.0应用程序,并请求创建一个控件:

显示地图,希望最新来自Google Maps / Bing等,以便用户滚动和缩放

允许用户在此地图上绘制一个形状,至少是一个圆形但是正方形或自由形状会很好

返回在该形状中找到的邮政编码以供应用程序使用

我一直在寻找.net地图控件,大多数都是指asp.net控件,那些似乎适用于windows(GMap.net,SharpMap),我不清楚我可以做我自己做的事情尝试使用这些库。开源将是不错的,但购买许可证并非不可能。任何能指出我正确方向的人都会受到赞赏。

1 个答案:

答案 0 :(得分:0)

我通过将Gmap.Net与谷歌地图api for .NET(http://gmaps.codeplex.com/)结合起来做了类似的事情

我已经发布了一种在这里绘制形状的方法

How to draw circle on the MAP using GMAP.NET in C#

可以轻松调整以绘制自由形式的多边形(使用相应的鼠标单击事件)

至于查询谷歌地图api获取邮政编码等,它可能被证明是棘手的形状(特别是自由形式)

一般来说关于.net如何运行的谷歌地图api的想法是这个

    private void findadd(string addstring)
    {
        var request = new GeocodingRequest();
        request.Address = addstring;
        request.Sensor = "false";
        var response = GeocodingService.GetResponse(request);
     }