IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

APIs Google Discussion :

Récupérer latitude/longitude en C# [Google Maps]


Sujet :

APIs Google

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2004
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 224
    Points : 78
    Points
    78
    Par défaut Récupérer latitude/longitude en C#
    Bonjour à tous,
    j'ai une google map dans un webbrowser, et j'aimerais récupérer dans mon programme c# la latitude et la longitude de l'endroit cliqué sur la map.

    Est-ce possible ?
    Merci

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2004
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 224
    Points : 78
    Points
    78
    Par défaut
    Ça n'inspire personne :p ?
    Apparemment une piste à suivre serait d'utiliser mshtml.dll, mais c'est pas très clair pour l'instant ...

  3. #3
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 070
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 070
    Points : 44 677
    Points
    44 677
    Par défaut
    Bonjour,
    sur l'événement onclick de la map, il est retourné,par l'api, des informations fortes intéressantes qui une fois récupérés peuvent être transmise coté serveur pour traitement.
    La bien sûr je reste coté client en javascript.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Août 2004
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 224
    Points : 78
    Points
    78
    Par défaut
    Oui j'avais noté comment récupérer la position en javascript, mais le problème était de passer ces valeurs au webbrowser.
    Grâce à DonQuiche sur le forum C# qui m'a dit :
    Cela me semble possible avec l'approche suivante :
    1) Utiliser WebBrowser.ObjectForScripting pour spécifier un objet COM (un objet dotnet marqué ComVisible) qui pourra être appelé depuis le javascript
    2) Modifier le DOM du document pour remplacer le handler JS "click" original afin qu'il appelle ton objet COM.

    PS : Gaffe à la sécurité. Il semblerait sage de vérifier que l'url de la page vient bien de Google.
    J'ai mis en place la solution suivante qui marche très bien :

    C#
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    private void form_load(object sender, EventArg e)
    {
     webBrowser1.ObjectForScripting = this;
    ...
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    //Code appelé par le JavaScript
    public void FromGM_MapClick(float Lat, float Lon)
    {
       MessageBox.Show("Coord : " + Lat.ToString() + " / " + (Lon).ToString());
    }
    JavaScript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    function OnMapClick(overlay,point) 
    {
         if (overlay.point) window.external.FromGM_MapClick(overlay.point.x,overlay.point.y) ;
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/05/2012, 13h49
  2. Récupérer la longitude / latitude d'un marqueur draggable
    Par Al3x dans le forum IGN API Géoportail
    Réponses: 7
    Dernier message: 21/07/2011, 09h40
  3. Récupérer latitude / longitude d'un tel portable
    Par kiemtso dans le forum Langage
    Réponses: 2
    Dernier message: 21/05/2010, 17h12
  4. Réponses: 2
    Dernier message: 06/10/2009, 14h22
  5. Réponses: 5
    Dernier message: 26/12/2007, 10h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo