对谷歌地图操作使用的是WebBrowser控件,通过对javascript的操作来实现对谷歌地图的各种操作,所以首先要创建一个html文件,并赋给WebBrowser的URl:
<!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>Google Maps</title>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
var map;
function initialize() {//初始化
var myLatlng = new google.maps.LatLng( 34.259442,108.947071);
var myOptions = {
zoom: 10,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
function zoomIn(){//放大函数
var zoomLevel = map.getZoom();
if(zoomLevel < 21){
zoomLevel += 1;
map.setZoom(zoomLevel);
}
}
function zoomOut(){//缩小函数
var zoomLevel = map.getZoom();
if(zoomLevel > 0){
zoomLevel -= 1;
map.setZoom(zoomLevel);
}
}
function markLocation(x,y){//标记某个位置
var myLatlng = new google.maps.LatLng(x, y);
map.setCenter(myLatlng);
marker = new google.maps.Marker({
map: map,
position: myLatlng,
draggable:true,
title:"纬度:"+x+" 经度:"+y
});
}
</script>
</head>
<body onload="initialize()">
<div id="map_canvas"></div>
</body>
</html>
操作地图的简单函数都写在javascript里
C#源文件如下
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace GoogleMapDemo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
string url = Application.StartupPath + "/map-simple.html";
webBrowser1.Url = new Uri(url);//指定url
}
private void toolStripButtonStart_Click(object sender, EventArgs e)
{
webBrowser1.Document.InvokeScript("initialize");//执行jiavascript
}
private void toolStripButtonZoomIn_Click(object sender, EventArgs e)
{
webBrowser1.Document.InvokeScript("zoomIn");
}
private void toolStripButtonZoomOut_Click(object sender, EventArgs e)
{
webBrowser1.Document.InvokeScript("zoomOut");
}
private void toolStripButtonMark_Click(object sender, EventArgs e)
{
object[] obj = { toolStripTextBox1.Text, toolStripTextBox2.Text };
webBrowser1.Document.InvokeScript("markLocation", obj);
}
}
}
- 大小: 96.1 KB
分享到:
相关推荐
标题中的“C#窗体程序实现网页地图”意味着我们需要在C#窗体应用程序中嵌入一个Web浏览器控件,这个控件可以加载并显示网页内容,例如Google地图。Google地图API提供了丰富的地图服务,包括地图显示、定位、路线规划...
在C#开发中调用谷歌地图API是一项常见的任务,它能为应用程序添加地图展示、定位、导航等功能。本文将详细讲解如何使用谷歌地图API以及涉及的核心类。 首先,要使用谷歌地图API,首要步骤是注册API密钥。如果你的...
在C# WinForm应用开发中,地图定位是一个常见的需求,特别是在构建GIS(地理信息系统)或者导航系统时。本文将深入探讨如何使用Google Maps API在WinForm应用中实现地图定位功能。 首先,理解C# WinForm的基本概念...
本教程将详细讲解如何在C#窗体应用中集成GMap控件,实现离线地图的加载与显示。 首先,我们需要了解GMap.NET的基本概念。GMap.NET是一个基于Google Maps API的.NET库,它不仅支持Google Maps,还支持Bing Maps、...
【C#谷歌地图下载器源码】是一款基于C#编程语言开发的应用程序,它能够帮助用户下载谷歌地图的图像数据。这款源码的亮点在于它允许用户按照特定的图层进行下载,这意味着用户可以根据需要获取地形、卫星图像、交通...
在本项目中,我们探讨的是一个基于C#的Windows Forms(Winform)应用程序,用于创建和操作计算机地图。这个程序的核心目标是实现地图制图功能,允许用户在Windows环境下进行地图数据的展示、编辑和分析。C#是...
在C#编程环境中,GMap.NET是一个强大的开源库,它允许开发者集成各种地图服务,包括谷歌地图、必应地图、OpenStreetMap等。本篇将详细介绍如何利用GMap.NET库来接入天地图服务,实现在线地图的功能。 首先,我们要...
总之,通过`ChromiumWebBrowser`和`WebBrowser`控件,开发者可以在C# WinForm应用中有效地集成和操作百度地图,提供丰富的地图功能给用户。这两种方法各有优劣,根据项目需求和性能要求,选择适合自己的方式即可。
这使得开发人员可以创建自定义的地图应用,包括在C#窗体上加载Google Earth。通过API,我们可以调用各种功能,如打开和保存KML(Keyhole Markup Language)文件,这是一种用于存储地理位置数据和元数据的XML格式。 ...
在C#中,我们可以使用如GMap.NET这样的开源库,它提供了丰富的地图服务,支持谷歌地图、必应地图等多种地图源。GMap.NET不仅提供基本的地图展示,还包括标记、路线规划、缩放和平移等功能。通过在窗体上添加...
GMap.NET是一个强大的开源库,专门用于在Windows Forms和WPF应用程序中集成地图功能。它不仅支持Google Maps,还支持Bing Maps、OpenStreetMap、Yahoo Maps等多种地图服务。在这个基于C#实现的GMap.NET程序例子中,...
【Google地图】是一种全球知名的在线地图服务,由Google公司提供,它集成了卫星图像、地形图、街景等多种地理信息,让用户能够查看地球表面的详细情况。在IT领域,特别是软件开发中,开发者有时会利用Google Maps ...
《C#公交查询系统》是一个基于C#编程语言开发的实用程序,旨在为用户提供便捷的城市公交线路查询服务。这个系统可以极大地帮助用户规划出行路线,了解公交线路信息,提高日常出行效率。以下将详细介绍该系统可能涉及...
在本文中,我们将深入探讨如何使用C#编程语言制作一个简单的WinForm地图检索程序,该程序内嵌了一个自定义的浏览器组件,以便用户通过Windows Forms界面调用Google Maps服务进行地图查询。首先,我们需要理解WinForm...
在本文中,我们将深入探讨如何在C# Windows Forms(WinForms)应用程序中集成Google Maps功能。Google Maps API为开发者提供了一种强大而直观的方式,在桌面应用中实现地图展示、定位、搜索等功能。以下是对这个主题...
在WPF中实现地图功能,通常会利用第三方地图服务提供商如Google Maps、Bing Maps或OpenStreetMap等提供的API。这些API提供了丰富的地图数据和各种地图操作,比如缩放、平移、标注和搜索等。对于搜索功能,用户可以...
在这个校园导航系统中,开发者利用了C#的窗体控件来构建用户界面,如按钮、文本框、标签等,以便用户可以交互式地查看和操作导航信息。 系统的核心功能之一是设置导航点。导航点可能包括教学楼、图书馆、食堂、宿舍...
这个实例中的源代码展示了如何在C#应用中初始化和操作GMap.NET控件。主要涉及以下几个关键步骤: - 控件的添加:将GMapControl对象添加到窗体上,设置其初始位置和缩放级别。 - 地图提供者选择:根据需求选择不同...
通常,我们先获取窗体的`Paint`事件,然后在该事件的处理程序中进行画线操作。`Paint`事件在窗体需要重绘时触发,比如窗口移动、缩放或被其他窗口覆盖后再次显示时。以下是一个简单的画线示例: ```csharp private ...