【c#】Form调用百度地图api攻略及常见问题
首先,在Form中调用百度地图api,我们需要使用webbrowser控件,这个在前面的文章中已经讲过了,可以参照(http://blog.csdn.net/buptgshengod/article/details/9617177)。
那么接下来就是一些关联性的操作。首先我建议把web的文件放到vs中来进行修改(文件本身以及用到的资源都要存到bin/debug中)。如图,这样统一操作更容易实现。
几个关键的问题在这要提一下:
问题一:webbrowser和form之间的数据传输问题。
答:这个已经在http://blog.csdn.net/buptgshengod/article/details/9617093,这里讲过了。
问题二:如果你不会html怎么办?
答:http://developer.baidu.com/map/jsdemo.htm。这个是百度地图api的demo网址,在里面选择你想要的功能。如果有基本的编程功底的,把这个加进自己的代码还是很容易做到的。这里要注意以下,使用demo中的代码要用百度提供的key,
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.5&ak=这里插入自己的key"></script>
<script type="text/javascript" src="http://api.map.baidu.com/library/DistanceTool/1.2/src/DistanceTool_min.js"></script>
问题三:如果form要对地图进行操作怎么办?
答:将要对地图进行的操作,写成function函数,比如
function getdistance()
{return result1;}
这是一个返回值的函数,然后在form中webBrowser1.Document.InvokeScript("getdistance");就可以使地图执行这个函数。
暂时我能想到的就这么多,希望对您有帮助。