谷歌地图Api和C#

谷歌地图Api和C#,c#,winforms,google-maps-api-3,webbrowser-control,C#,Winforms,Google Maps Api 3,Webbrowser Control,我的地图有问题。大约5个月前,地图工作正常。现在,当我用坐标加载地图时,地图正在加载,但当我开始浏览地图、缩放等时,我会看到白色屏幕,好像和地图没有任何联系。。我需要再次加载地图,但同样的问题再次发生。大约5个月前,我在使用这个脚本,一切都很好。。浏览,缩放,更改地图类型,一切都没有任何问题。我根据谷歌网站创建了html代码,并将其放入新的资源文件中: <!DOCTYPE html> <html> <head> <meta name="viewport"

我的地图有问题。大约5个月前,地图工作正常。现在,当我用坐标加载地图时,地图正在加载,但当我开始浏览地图、缩放等时,我会看到白色屏幕,好像和地图没有任何联系。。我需要再次加载地图,但同样的问题再次发生。大约5个月前,我在使用这个脚本,一切都很好。。浏览,缩放,更改地图类型,一切都没有任何问题。我根据谷歌网站创建了html代码,并将其放入新的资源文件中:

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" />
<title>Google Maps JavaScript API v3 Example: Map Simple</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">



  function load(latitude,longitude,zoomik) {
    var myLatlng = new google.maps.LatLng(latitude,longitude);
    var myOptions = {
      zoom: zoomik,
      center: myLatlng,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    }


    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

    var marker = new google.maps.Marker({
        position: myLatlng, 
        map: map,
        title:"Here!"});

  }

</script>
</head>
<body onload="load()">
  <div id="map_canvas"></div>
</body>
</html>
屏幕: 正确加载地图:

使用平移工具或缩放工具后:-空白白色屏幕。

我正在使用winforms中的Visual C#Express和WebBrowser控件

HTML代码在Firefox中正常工作(使用Aptana Studio)(缩放和平移工作正常)

此外,google api示例中的代码也无法正常工作:

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css"        rel="stylesheet" type="text/css" />
<title>Google Maps JavaScript API v3 Example: Map Simple</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
 function initialize() {
    var myLatlng = new google.maps.LatLng(-34.397, 150.644);
    var myOptions = {
     zoom: 8,
     center: myLatlng,
     mapTypeId: google.maps.MapTypeId.ROADMAP
   }
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
   }
  </script>
  </head>
  <body onload="initialize()">
  <div id="map_canvas"></div>
  </body>
  </html>

谷歌地图JavaScript API v3示例:简单地图
函数初始化(){
var mylatng=new google.maps.LatLng(-34.397150.644);
变量myOptions={
缩放:8,
中心:myLatlng,
mapTypeId:google.maps.mapTypeId.ROADMAP
}
var map=new google.maps.map(document.getElementById(“map_canvas”),myOptions);
}

当我在GMAP上遇到问题时,我要做的第一件事就是更改地图键,你试过这个吗?你尝试了哪些浏览器?Firefox、Chrome还是IE

当我在gmap上遇到问题时,我做的第一件事就是更改地图键,你试过这个吗?你尝试了哪些浏览器?Firefox、Chrome还是IE

也许你可以改为在Flash中加载google地图,而不是在WebBrowser对象中加载?下面的链接解释了如何使用WPF来实现这一点,但它应该很容易适用于WinForms:

也许您可以改为在Flash中加载google地图,而不是在WebBrowser对象中加载?下面的链接解释了如何使用WPF实现,但它应该很容易应用于WinForms:

我在Google Maps v3中遇到了类似的问题。尽管如此,我的问题是,我的目标是当前的Google Maps v3 API,他们“不赞成”调用
set\u map
,并引入了与
setMap
相同的功能

我在你的代码中没有看到任何应该被破坏的东西。如果此页面上有其他JavaScript抛出错误,有时可能会导致Google Maps无法加载。例如,如果您引用了其他一些引发未捕获异常的JavaScript,则映射可能不会加载

我的建议是指定Google Maps API的版本,而不是使用当前版本,然后看看是否可以修复它:



编辑:另外,再次查看您的帖子,您可能希望将设置标记和地图缩放的逻辑移出加载功能。这样,当您单击按钮时,您就不会初始化地图和选项。我在前几天的文档中看到,地图现在有一个针对div内容的“clear”选项,加载两次地图(body load,button click)可能会强制执行这种清除行为。同样,针对以前的API版本,它可能会工作。

我在Google Maps v3上遇到了类似的问题。尽管如此,我的问题是,我的目标是当前的Google Maps v3 API,他们“不赞成”调用
set\u map
,并引入了与
setMap
相同的功能

我在你的代码中没有看到任何应该被破坏的东西。如果此页面上有其他JavaScript抛出错误,有时可能会导致Google Maps无法加载。例如,如果您引用了其他一些引发未捕获异常的JavaScript,则映射可能不会加载

我的建议是指定Google Maps API的版本,而不是使用当前版本,然后看看是否可以修复它:



编辑:另外,再次查看您的帖子,您可能希望将设置标记和地图缩放的逻辑移出加载功能。这样,当您单击按钮时,您就不会初始化地图和选项。我在前几天的文档中看到,地图现在有一个针对div内容的“clear”选项,加载两次地图(body load,button click)可能会强制执行这种清除行为。再次强调,针对以前的API版本,它可能会工作。

我自己就知道了

错误在于:


将其更改为:



地图正常工作

这是我自己想出来的

错误在于:


将其更改为:



地图正常工作

我用的是VisualForms中的WebBrowser。API密钥?根据谷歌地图API网站:“这个版本的谷歌地图JavaScript API不再需要API键!”。HTML代码在Firefox中正常工作。我正在使用VisualForms中的WebBrowser。API密钥?根据谷歌地图API网站:“这个版本的谷歌地图JavaScript API不再需要API键!”。HTML代码在Firefox中正常工作。
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css"        rel="stylesheet" type="text/css" />
<title>Google Maps JavaScript API v3 Example: Map Simple</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
 function initialize() {
    var myLatlng = new google.maps.LatLng(-34.397, 150.644);
    var myOptions = {
     zoom: 8,
     center: myLatlng,
     mapTypeId: google.maps.MapTypeId.ROADMAP
   }
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
   }
  </script>
  </head>
  <body onload="initialize()">
  <div id="map_canvas"></div>
  </body>
  </html>