by Admin
23. Juni 2009 23:36
Ich spiele gerade ein wenig mit Google Maps herum – genauer gesagt mit dem Google Maps .NET Control von Reimers. Mit diesem Control ist es sehr einfach eine Google Map auf die eigene Seite zu bringen.
Kleines Beispiel:
<Reimers:GoogleMap ID="myGMap" width="100%" Height="100%" runat="server">
</Reimers:GoogleMap>
…dieses Markup genügt um eine Map auf der Seite anzuzeigen. Einen Center-Punkt und Zoom im Markup festzulegen ist auch kein Problem:
<Reimers:GoogleMap ID="myGMap" width="100%" Height="100%" runat="server" Zoom="7">
<Center Latitude="50" Longitude="10" />
</Reimers:GoogleMap>
Hinzufügen von Markern im Code-Behind funktioniert folgendermaßen. Der Code fügt einen Marker an Position 50, 10 ein. Außerdem wird ein InfoWindow definiert, welches sich beim Klick auf den Marker öffnet und das eingefügte HTML anzeigt.
GoogleMarker gm1 = new GoogleMarker("mrkClick", 50, 10);
gm1.ClientSideHandlers.OnClick = gm1.OpenInfoWindowHTML(myGMap, "<b>Hallo vom SQL-ASP-Blog!!!</b>");
myGMap.Overlays.Add(gm1);
…das sieht dann so aus:
Das Control beherrscht auch eigene Callbacks, so dass man auf bestimmte Events reagieren kann. So können zum Beispiel Marker nur hinzugefügt werden, wenn eine bestimmte Zoomstufe erreicht ist etc. – alles ohne Neu laden der Seite.
Wie gesagt – ich spiele erst einmal ein wenig damit herum. Aufgefallen ist mir bisher, dass es anscheinend keine einfache Möglichkeit gibt das Control und gleichzeitig UpdatePanels auf einer Seite zu verwenden. Finde ich etwas schade…
Trotzdem ist das Control auf jeden Fall einen Blick wert, wenn man mal einfach eine Google Map auf eine Seite bringen möchte.
Zu finden gibt es das Google Maps .NET Control hier: http://www.reimers.dk/. Für den Download ist eine Anmeldung notwendig.