ASP.NET编程知识之GMap.Net地图插件在WinForm和WPF中的应用 GMap.Net是一款功能强大且灵活的地图插件,它可以在WinForm和WPF应用程序中使用,以提供丰富的地图显示和交互功能。下面我们将详细介绍如何在WinForm和WPF中使用GMap.Net地图插件。 一、GMap.Net简介 GMap.Net是一款开源的地图插件,提供了丰富的地图显示和交互功能,支持多种地图提供商,如Google Maps、Bing Maps、Yahoo Maps等。GMap.Net支持WinForm和WPF应用程序,并提供了详细的文档和示例代码,帮助开发者快速上手。 二、在WinForm中使用GMap.Net 要在WinForm中使用GMap.Net,需要首先下载GMap.Net的源代码,并编译三个核心项目:GMap.Net.Core、GMap.Net.WindowsForms和GMap.Net.WindowsPresentation。然后,在WinForm项目中添加对GMap.Net.Core.DLL和GMap.Net.WindowsForms.DLL的引用。 接下来,需要创建一个UserControl,并继承自GMapControl,以便在WinForm中显示地图。例如: ```csharp namespace GMapWinFormDemo { public partial class MapControl : GMapControl { public MapControl() { InitializeComponent(); } } } ``` 在主Form中,需要添加相关的代码,以便显示地图和处理交互事件。例如: ```csharp namespace GMapWPFDemo { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); try { System.Net.IPHostEntry e = System.Net.Dns.GetHostEntry("www.google.com.hk"); } catch { mapControl.Manager.Mode = AccessMode.CacheOnly; MessageBox.Show("No internet connection available, going to CacheOnly mode.", "GMap.NET Demo", MessageBoxButton.OK, MessageBoxImage.Warning); } mapControl.MapProvider = GMapProviders.GoogleChinaMap; //google china 地图 mapControl.MinZoom = 2; //最小缩放 mapControl.MaxZoom = 17; //最大缩放 mapControl.Zoom = 5; //当前缩放 mapControl.ShowCenter = false; //不显示中心十字点 mapControl.DragButton = MouseButton.Left; //左键拖拽地图 mapControl.Position = new PointLatLng(32.064, 118.704); //地图中心位置:南京 mapControl.OnMapZoomChanged += new MapZoomChanged(mapControl_OnMapZoomChanged); mapControl.MouseLeftButtonDown += new MouseButtonEventHandler(mapControl_MouseLeftButtonDown); } } } ``` 三、在WPF中使用GMap.Net 在WPF中使用GMap.Net与WinForm中使用类似,需要首先下载GMap.Net的源代码,并编译三个核心项目:GMap.Net.Core、GMap.Net.WindowsForms和GMap.Net.WindowsPresentation。然后,在WPF项目中添加对GMap.Net.Core.DLL和GMap.Net.WindowsPresentation.DLL的引用。 接下来,需要创建一个UserControl,并继承自GMapControl,以便在WPF中显示地图。例如: ```csharp namespace GMapWPFDemo { public partial class MapControl : GMapControl { public MapControl() { InitializeComponent(); } } } ``` 在主Window中,需要添加相关的代码,以便显示地图和处理交互事件。例如: ```csharp namespace GMapWPFDemo { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); try { System.Net.IPHostEntry e = System.Net.Dns.GetHostEntry("www.google.com.hk"); } catch { mapControl.Manager.Mode = AccessMode.CacheOnly; MessageBox.Show("No internet connection available, going to CacheOnly mode.", "GMap.NET Demo", MessageBoxButton.OK, MessageBoxImage.Warning); } mapControl.MapProvider = GMapProviders.GoogleChinaMap; //google china 地图 mapControl.MinZoom = 2; //最小缩放 mapControl.MaxZoom = 17; //最大缩放 mapControl.Zoom = 5; //当前缩放 mapControl.ShowCenter = false; //不显示中心十字点 mapControl.DragButton = MouseButton.Left; //左键拖拽地图 mapControl.Position = new PointLatLng(32.064, 118.704); //地图中心位置:南京 mapControl.OnMapZoomChanged += new MapZoomChanged(mapControl_OnMapZoomChanged); mapControl.MouseLeftButtonDown += new MouseButtonEventHandler(mapControl_MouseLeftButtonDown); } } } ``` 四、GMap.Net的优点和缺点 GMap.Net的优点包括: * 支持多种地图提供商 * 提供了丰富的地图显示和交互功能 * 支持WinForm和WPF应用程序 * 提供了详细的文档和示例代码 GMap.Net的缺点包括: * 需要编译三个核心项目 * 需要添加对DLL的引用 * 需要创建UserControl并继承自GMapControl GMap.Net是一款功能强大且灵活的地图插件,可以在WinForm和WPF应用程序中使用,以提供丰富的地图显示和交互功能。
2025-07-01 13:32:42 18KB asp.net 编程语言 wpf .net
1
GMap.NET is great and Powerful, Free, cross platform, open source .NET control. Enable use routing, geocoding, directions and maps from Coogle, Yahoo!, Bing, OpenStreetMap, ArcGIS, Pergo, SigPac, Yendux, Mapy.cz, Maps.lt, iKarte.lv, NearMap, OviMap, CloudMade, WikiMapia, MapQuest in Windows Forms & Presentation, supports caching and runs on windows mobile!
2024-06-05 09:36:15 4.91MB GMap
1
GMap.NET 实例
2024-03-16 09:36:54 643KB GMap.NET
1
GMap.NET.WindowsForms:基于windowsforms的地图浏览工具
2023-11-05 18:13:03 2.13MB GMap.NET WindowsForms
1
包括了GMap.NET 控件,C#的调用源代码。 功能齐全,代码详尽,不可错过哦。
2022-11-29 17:39:12 107KB GMap.NET C# 源代码 地图
1
软件介绍:https://blog.csdn.net/loutengyuan/article/details/126539427 包含以下功能: - 多种地图切换:Baidu(百度), Amap(高德), Tencent(腾讯), Tianditu(天地图), Ship, Google, Bing, OpenStreetMap, ArcGIS, Here(Nokia)等; - 坐标拾取和坐标转换:GPS(WGS84)、火星坐标(GCJ02)、百度坐标(BD09)等相互转换,地理编码和反地理编码等; - POI查询:通过百度地图、高德地图、腾讯地图等WebAPI搜索、保存POI数据; - 地图下载、拼接:通过矩形、多边形、行政区划等方式下载、缓存地图数据或者拼接成大图; - 导航路线搜索、导出:通过百度地图、高德地图、腾讯地图等WebAPI搜索、保存导航路线数据; - 历史轨迹加载、回放:加载不同格式(csv/excel/nmea)轨迹数据,并可以回放、测试等; - 实时轨迹显示:通过串口接收GPS信息显示在地图上;
2022-09-03 18:00:51 30.89MB 地图工具 坐标转换 地图下载 GPS轨迹
1
GMAP.net 默认高德地图
2022-07-03 16:03:04 44.72MB GMAP 高德
1
,将此文件覆盖Mission planner 1.3.7安装目录下后,会在mission planner地图选项新增一个“”“高德混合地图”,除显示卫星为,还显示地名,非常方便。默认的mission planner不带该地图。
2022-05-26 16:38:26 224KB .net 源码软件 GMAP.NET
1
开源的GMap.net源码上的二次开发,新增了缓存瓦片地图功能,新增了高德地图图源,新增了访问离线瓦片地图功能
2022-05-12 17:48:35 48.8MB C#  GMap.Net WPF
1
GMap.NET下载离线地图下载即用谷歌百度腾讯高德
2022-04-07 12:33:11 87.91MB GMap.NET
1