C#使用WebBrowser引入百度地图
2022/2/26 1:23:39
本文主要是介绍C#使用WebBrowser引入百度地图,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
欢迎您成为我的读者,希望这篇文章能给你一些帮助。
前言
今天有空和大家一起研究研究在WinForm端如何使用百度地图公开的信息利用WebBrowser组件来加载显示出地图。
首先仔细阅读百度地图的SDK信息,未提供在C#端的SDK信息,那么只能通过在WebBrowser中是通过加载网页html的形式来显示的。
此时用到的百度地图JavaScript API v3.0,地址如下:
https://lbsyun.baidu.com/index.php?title=jspopular3.0
百度地图SDK
根据公开的SDK信息仔细阅读,基本写的很清楚。具体步骤如下所示:
1、先申请百度地图的密钥。
2、准备移动端页面(静态页面被C#的WebBrowser组件调用)。
3、配置其百度地图属性。
4、传入地图中心点的经纬度信息,加载显示地图
<!DOCTYPE html> <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Hello, World</title> <style type="text/css"> html{height:100%} body{height:100%;margin:0px;padding:0px} #container{height:100%} </style> <script type="text/javascript" src="https://api.map.baidu.com/api?v=3.0&ak=密钥"> </script> </head> <body> <div id="container"></div> <script type="text/javascript"> // 创建地图实例 var map = new BMap.Map("container"); // 创建点坐标 var point = new BMap.Point(116.404, 39.915); // 初始化地图,设置中心点坐标和地图级别 map.centerAndZoom(point, 15); </script> </body> </html>
WebBrowser组件
对于在C#的WinForm端,需要利用WebBrowser组件来嵌套显示此静态页面。
具体步骤如下:
1、先新建HTML的静态页面,如上面代码一样。
2、在C#代码中利用WebBrowser调用其静态页面。
3、利用调用方法,可在WebBrowser和html页面间实现双向调用。
4、根据具体的经纬度信息在百度地图中显示出具体的坐标信息。
具体代码如下所示:
// 防止 WebBrowser 控件打开拖放到其上的文件。 wb.AllowWebBrowserDrop = false; // 防止 WebBrowser 控件在用户右击它时显示其快捷菜单. wb.IsWebBrowserContextMenuEnabled = false; // 以防止 WebBrowser 控件响应快捷键。 wb.WebBrowserShortcutsEnabled = false; // 以防止 WebBrowser 控件显示脚本代码问题的错误信息。 wb.ScriptErrorsSuppressed = true; // 这个属性比较重要,可以通过这个属性,把后台代码中的数据,传递到JS中,供内嵌的网页使用 wb.ObjectForScripting = this; // 设置WebBrower的Url string url = string.Format(Application.StartupPath + "/Baidu.html"); wb.Url = new Uri(url); //WebBrower调用网页 wb.Document.InvokeScript("updateBaidu"); //网页调用C# 方法 window.external.getData();
这里大概的知识点就这么多,大家可以实际上手操作一遍,大概就知道是咋么回事了。
寄语
人生短暂,我不想去追求自己看不见的,我只想抓住我能看得见的。
原创不易,给个关注。
我是阿辉,感谢您的阅读,如果对你有帮助,麻烦点赞、转发 谢谢。
很高兴能和您成为朋友。
这篇关于C#使用WebBrowser引入百度地图的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#
- 2024-01-24Advanced .Net Debugging 1:你必须知道的调试工具
- 2024-01-24.NET集成IdGenerator生成分布式全局唯一ID
- 2024-01-23用CI/CD工具Vela部署Elasticsearch + C# 如何使用
- 2024-01-23.NET开源的简单、快速、强大的前后端分离后台权限管理系统