一、引言

找了个示例项目,运行了下,然后对照着百度的官方示例(百度地图开放平台-首页链接)自己增加了点内容。

需要技能为C#,JavaScript,HTML。不会后两个,复制粘贴官方demo也能对付着用。

GitHub项目链接 https://github.com/landbroken/BaiduMapLearning

先开个坑,有空更新完整版。

二、基础技能

开发中可能涉及到的基础技能:

  • 1、webBrowser控件在C#和HTML中传值

2.1 webBrowser控件在C#和HTML中传值

2.1.1 C#至html

以下为示例:

C#中传递值给html里的函数

object[] objects = new object[2];
//当前纬度
objects[0] = share_data.CurLat;
//当前经度
objects[1] = share_data.CurLng;
//传值给html中的mapInit函数
webBrowser.Document.InvokeScript("mapInit", objects);

html文件script中对应的maptnit函数

 function mapInit(CurLat, CurLng) {}

2.1.2 html至C#

html文件script中函数定义

    //获取测试坐标 startvar Lng = 116.380960var Lat = 39.913280function GetTestGPS(CurLng, CurLat) {//百度地图API功能,经度,纬度var point = new BMap.Point(CurLng, CurLat);map.centerAndZoom(point, 20);var text="123"window.external.LocateInfo(text);return Lng;}//获取测试坐标 end
        private void btnGetRightClickGPS_Click(object sender, EventArgs e){//116.380967,39.913285object[] objects = new object[2];//当前经度objects[0] = Convert.ToDouble(textBoxX.Text);//当前纬度objects[1] = Convert.ToDouble(textBoxY.Text);//传值给html中的FindPosition函数object bb = webBrowser1.Document.InvokeScript("GetTestGPS", objects);}public void LocateInfo(string msg){string get = msg;}

这里使用了两种方法,方法一是return这一句,返回值赋值给object对象bb 。

return Lng;

方法二是window.external这里,调用了C#里面的LocateInfo函数,传递一个string

window.external.LocateInfo(text);

三、百度地图简易调用

1、添加一个webBrowser控件
2、通过控件载入地图(需要联网)

            string str_url = Application.StartupPath + "\\IndexMap.html";Uri url = new Uri(str_url);webBrowser1.Url = url;//屏蔽webBrowser浏览器右键菜单//webBrowser1.IsWebBrowserContextMenuEnabled = false;//修改webbrowser的属性使c#可以调用js方法:webBrowser1.ObjectForScripting = this;

3、功能写在html中,通过C#调用js方法实现,js方法可以从百度的官方demo复制。例如:

        //清除地图上的标记,点击清除按钮触发private void clearMarker_Click(object sender, EventArgs e){webBrowser1.Document.InvokeScript("ClearAllMarkers");  }

详见GitHub上完整示例。

参考文献

1、C#|通过webBrowser控件实现与html间的相互传值

C#调用百度地图API经验分享相关推荐

  1. C#调用百度地图API入门解决BMap未定义问题

    本文主要是最近帮助好友研究JavaScript的百度地图API,同时显示到C# Winform界面.同时遇到了BMap未定义的错误(BMap is not defined)及解决方法.以前写过基于An ...

  2. 【c#】Form调用百度地图api攻略及常见问题

    首先,在Form中调用百度地图api,我们需要使用webbrowser控件,这个在前面的文章中已经讲过了,可以参照(http://blog.csdn.net/buptgshengod/article/ ...

  3. 调用百度地图API出现 error inflating class com.baidu.mapapi.map.mapview

    调用百度地图API出现 error inflating class com.baidu.mapapi.map.mapview 问题如下 本来以为解决了,但后来重新运行了一下,又坏了,然后改成原来的样子 ...

  4. python调用百度地图API爬取西安市POI数据

    任务前提 做该项目之前,首先得有基础知识: 编程语言:python 编译工具:PyCharm 网络爬虫相关知识,xpath库,numpy,pandas等库. 任务准备: 去百度地图开放平台申请密匙:h ...

  5. c语言api获取百度地图,H5调用百度地图API获取地理位置

    //获取当前位置 var geolocation = new BMap.Geolocation(); geolocation.getCurrentPosition(function(r){ alert ...

  6. java 地图api接口_Java调用百度地图API

    本实战代码将使用百度地图的接口来实现以下功能: 1.确定输入地址的坐标 2.两个坐标的距离 其他的话,还要使用百度账户申请相关的api,具体见: http://lbsyun.baidu.com/ind ...

  7. Python调用百度地图api路径查询

    通过调用百度地图api获取两个地点的距离和时间.参数详见百度地图api官方文档. # -*- coding: utf-8 -*- """ Created on Thu M ...

  8. centerandzoom 无效_Django调用百度地图api在地图上批量增加标记点

    在调用百度地图api进行web开发时遇到了一个需求,我们需要在网页中内嵌一个div 然后在div中调用百度地图的js显示我们所需要的地区.根据需求坐标在地图上添加若干个标记点,并批量的为各个标记点设置 ...

  9. python 调用百度地图api 实现批量经纬度转换为实际省市地点(api调用,json解析,mysql读取与写入)

    1.获取秘钥 调用百度地图API实现得申请百度账号或者登陆百度账号,然后申请自己的ak秘钥.链接如下:添加链接描述 下面是百度创建的app设置: 2.调用API将经纬度信息解析成json信息 def ...

  10. HTML5页面调用百度地图API,获取当前位置并导航到目的地

    微信也可用, <!DOCTYPE html> <html lang="zh-cmn-Hans"><meta charset="UTF-8&q ...

最新文章

  1. android多行文本框hint居中,在安卓等移动浏览器中placeholder中的文字不垂直居中问题...
  2. 用Axure开发的一个智能驾驶的app原型
  3. P4719-[模板]动态DP【矩阵乘法,树链剖分,线段树】
  4. php4.0中文手册,服务 — CodeIgniter 4.0.0 中文手册|用户手册|用户指南|中文文档
  5. win下常用快捷鍵及其作用
  6. java bufferedreader读大文件会内存溢出吗_深度分析:java中的字符流与字节流,以及缓存流,一次性帮你全掌握...
  7. android手机录屏工具,安卓手机录屏软件哪个好用
  8. 微信小程序上线发布流程
  9. 慧荣SM2246XT主控的固态硬盘修复开卡不识别怎么短接方法
  10. 信庭嵌入式工作室-ARM应用技术之体系结构应用(中)
  11. 宏定义是什么?为什么要进行宏定义?宏定义的格式
  12. MySQL (四)------DML操作表记录-增删改【重点】DQL操作表记录-查询【重点】
  13. trello01:后端的搭建
  14. CollapsingToolbarLayout 标题字体及颜色设置
  15. [附源码]java毕业设计校园拓展活动管理系统
  16. 2016 清华 计算机 考研 经验 总结
  17. iftop命令命令详解
  18. vs2017 fatal error LNK1104: 无法打开文件“\.obj”
  19. 华为三个路由器ospf配置案例
  20. 访问学者初到美国,如何快速融入当地生活呢?

热门文章

  1. 科学计算机的英文怎么拼读,科学的英语读音,科学的英文怎么读谐音。
  2. 5-lighttpd安装
  3. 输入法的新时代:搜狗、讯飞、百度鏖战智能语音
  4. git本地库案例-找回删除的文件
  5. python中pip安装报错的一些总结
  6. 【转载】测试报告模板
  7. python中的ix是啥_python ix
  8. unc0ver 越狱工具来袭,免电脑操作,支持 A7-A12,支持iOS11~iOS12.4稳定越狱
  9. 云南企业私有云平台搭建解决方案、Zstack云平台管理软件介绍
  10. Java整合ORC识别验证码