在Windows窗体应用程序中显示地图

Sai*_*udo 6 c# maps winforms

几个月前我建立了一个Winform应用程序,用于安排维修技术人员的约会.我想通过在客户表单上添加客户地址的地图来更新应用程序,然后在技术人员离开办公室时在报告上打印该地图.

我一直在四处寻找,但我还没有找到一个好的解决方案.

我目前有一个客户地址.我想做的是将地址提交到一个热门的在线地图网站,并获得该地区的小地图.我几乎可以使用嵌入式链接功能使用谷歌地图.在为其网站添加地址后,我可以获得以下HTML:

<iframe width="300" height="300" frameborder="0" scrolling="no" 
   marginheight="0" marginwidth="0" 
   src="http://maps.google.com/maps?hl=en&amp;ie=UTF8&amp;t=h&amp;g=1193+Presque+Isle+Dr,+Port+Charlotte,+FL+33952&amp;s=AARTsJqsWtjYwJ7ucpVS6UU2EInkRk6JLA&amp;ll=27.012108,-82.087955&amp;spn=0.005735,0.006437&amp;z=16&amp;output=embed">
</iframe>
Run Code Online (Sandbox Code Playgroud)

我的第一个计划是简单地解析这个HTML并插入该地址所需的客户地址,然后在表单上的浏览器对象中显示结果.但是,如果我更改上述iframe中的地址,Google会向我提供"您的客户端无权获取URL ..."消息.

我没有偏好我最终使用哪个地图服务,重要的是该解决方案不能具有相关费用,并且可以从Windows表单中使用.

任何人都有关于如何解决这个问题的想法/建议/资源?

结果:

我最终使用了这里找到的控件.我发现它是一个"好的"解决方案......因为代码不能按原样运行,所以工作很繁琐.我很惊讶地发现没有一个流行的地图API支持winforms.

Ste*_*r B 0

Google 地图和实时地图都有公共 API。

既然你正在做 winforms 我可能会使用实时地图。

http://dev.live.com/VirtualEarth/

CodePlex 上有一些示例。

http://codeplex.com/Project/ProjectDirectory.aspx?TagName=Virtual%20Earth