它今天与 Javascript 数组定义有关。
当您调用 GMap1.Add() 时,您会注意到 polygon.ToString() 在生成的 Javascript 中导致 [[ 。
用 [ 替换 [[ 将解决您的问题。
如果您使用接受多边形的 Add 重载,则需要稍微更改代码,以使用自定义 Javascript 重载。
要重现位于其网站http://en.googlemaps.subgurim.net/ejemplos/ejemlo_94100_Pol%C3%ADgonos.aspx上的第一个多边形示例,请执行以下操作:
GLatLng latlng = new GLatLng( 46, 21 );
GMap1.setCenter( latlng, 4 );
List<GLatLng> puntos = new List<GLatLng>();
puntos.Add( latlng + new GLatLng( 0, 8 ) );
puntos.Add( latlng + new GLatLng( -0.5, 4.2 ) );
puntos.Add( latlng );
puntos.Add( latlng + new GLatLng( 3.5, -4 ) );
puntos.Add( latlng + new GLatLng( 4.79, +2.6 ) );
GPolygon poligono = new GPolygon( puntos, "557799", 3, 0.5, "237464", 0.5 );
poligono.close();
var objJs = new StringBuilder();
objJs.Append("function addborder" + 0 + "()");
objJs.Append("{");
objJs.Append( poligono.ToString( GMap1.GMap_Id ) );
objJs.Replace("clickable:False", "clickable:false");// ' Replace incorrect False statement
objJs.Append("}");
GMap1.Add( "addborder" + 0 + "();", true );
var objString = objJs.ToString();
var newstring = objString.Replace( "[[", "[" ).Replace( "]]", "]" );
GMap1.Add( newstring );