Question

Comment afficher yahoo carte statique dans gridview si on passe l'adresse comme chaîne de requête? S'il vous plaît également dire comment afficher yahoo dynamique des cartes aussi. J'ai recherché sur les cartes de Yahoo et a obtenu les liens suivants http://developer.yahoo.com/ flash / cartes / examples.html , http://developer.yahoo.com/ cartes / repos / V1 / et http://developer.yahoo.com/maps/. Je n'ai pas de lien qui a le code pour intégrer la carte Yahoo dans un site ASP.Net!

Était-ce utile?

La solution

J'ai créé carte dynamique de Yahoo, l'adresse peut être transmise comme valeur d'un champ caché présent dans la page. La valeur pour le champ caché peut être dynamiquement passé dans l'événement page_load. J'ai créé cela dans la page enfant encapsulé par page maître dans ASP.Net.

Avant de commencer, l'utilisateur doit générer ID d'application pour l'utilisation des cartes yahoo en vous connectant à votre ID Yahoo et naviguer sur ce lien https://login.yahoo.com/config/login_verify2?.src=devnet&.done=http:// developer.apps.yahoo.com/wsregapp/ et fournir l'URL de notre site Web.

Le code pour afficher la carte Yahoo est donnée ci-dessous:

                   .map {     hauteur: 400px;     largeur: 700px;     Font-family: Verdana;     Font-size: 11px;     font-weight: bold; }     

<script type="text/javascript" src="http://api.maps.yahoo.com/ajaxymap?v=3.8&appid=YourAPPID">  
</script>

<script type="text/javascript">

    // Capture the user mouse-click and expand the SmartWindow
    function onSmartWinEvent() {


        // Create a map object
        var map = new YMap(document.getElementById('<%= map.ClientID %>'));
        // Add a pan control
        map.addPanControl();
        // Add a slider zoom control
        map.addZoomLong();
        // Display the map centered on the address specified          
        map.drawZoomAndCenter(document.getElementById('<%= HiddenField1.ClientID %>').value, 3);
        // Create a marker positioned at the address specified
        var marker = new YMarker(document.getElementById('<%= HiddenField1.ClientID %>').value, createCustomMarkerImage());
        // Add a label to the marker
        //marker.addLabel("<blink>*</blink>");
        // Call onSmartWinEvent when the user clicks on the marker 
        YEvent.Capture(marker, EventsList.MouseClick, onSmartWinEvent);
        // Display the marker 
        map.addOverlay(marker);


        var words = document.getElementById('<%= HiddenField1.ClientID %>').value;
        marker.openSmartWindow(words);

        // Add map type control   
        map.addTypeControl();
        // Default map to satellite (YAHOO_MAP_REG) -- other opts: YAHOO_MAP_HYB,YAHOO_MAP_SAT
        map.setMapType(YAHOO_MAP_REG);
    }

    function createCustomMarkerImage() {
        var myImage = new YImage();
        myImage.src = 'http://l.yimg.com/www.flickr.com/images/dot_splat.png';
        myImage.size = new YSize(30, 31);
        myImage.offsetSmartWindow = new YCoordPoint(15, 15);
        return myImage;
    }
</script>

<table width="100%" align="left">        
    <tr>
        <td>
            <body onload="onSmartWinEvent()">
                <div id="map" class="map" runat="server">
                </div>
                <asp:HiddenField ID="HiddenField1" runat="server" />
            </body>
        </td>
    </tr>
</table>

NOTE: La limitation du débit: Yahoo! Maps API AJAX est limité à 50.000 requêtes par IP par jour. Vérifiez ce lien http://developer.yahoo.com/search/rate.html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top