GMap.ToString
Con el método ToString de la clase GMap se puede recoger el javascript que va a producir nuestro mapa.
Gracias a esto, facilitamos cosas como el javascript que vamos a devolver en un server event. Basta con inicializar
la clase GMap con el GMap_Id, y luego podemos añadirle todo lo que queramos: controles, markers, infowindows, etc.
El ejemplo es totalmente clarificador (clickar sobre el mapa):
Code.aspx
<cc1:GMap ID="GMap1" runat="server" enableServerEvents="True" OnClick="GMap1_Click" />
Code.aspx.cs
protected string GMap1_Click(object s, Subgurim.Controles.GAjaxServerEventArgs e)
{
GMap gmap = new GMap(e.map);
// GMarker and GInfoWindow
GMarker marker = new GMarker(e.point);
GInfoWindow window = new GInfoWindow(marker, "Cool!!", true);
gmap.Add(window);
// Movement
//gmap.addMovement(1000, e.point + new GLatLng(25, 38));
//gmap.addMovement(1000, e.point);
// Polylines
if (e.point != e.center)
{
List points = new List();
points.Add(e.center);
points.Add(e.point);
gmap.addPolyline(new GPolyline(points, Color.Yellow));
}
// Controls
gmap.addControl(new GControl(GControl.extraBuilt.MarkCenter));
gmap.addControl(new GControl(GControl.preBuilt.LargeMapControl));
gmap.addControl(new GControl(GControl.preBuilt.MapTypeControl));
// Maybe... anything? ;)
gmap.enableScrollWheelZoom = false;
gmap.mapType = GMapType.GTypes.Satellite;
return gmap.ToString();
}