Bonjour Tanguy,
Il semble pas possible de bloquer le rechargement de la carte lors de l’affichage de l’écran.
Il existe cependant 2 solutions permettant de repositionner la carte dans sa configuration précédente.
La première : lors du clic de l’utilisateur sur l’épingle, récupérer la latitude et la longitude du point central de la carte à cet instant avec les propriétés Map.CenterLocation.Latitude et Map.CenterLocation.Longitude
Stocker ces valeurs dans des variables pour qu’elles puissent être réutilisées pour définir la position par défaut de la carte lors du retour sur l’écran, avec les propriétés DefaultLatitude et DefaultLongitude.
Malheureusement, il n’est pas possible de récupérer le niveau de zoom, la propriété DefaultZoomLevel devra donc prendre une valeur fixe (par exemple 10).
Attention, ne pas oublier de passer la valeur de la propriété DefaultLocation à true pour que cela soit bien pris en compte.
La seconde : moins propre, mais permettant de conserver le niveau de zoom également, serait de “fusionner” tes 2 écrans. Les informations de détail affichées lors du clic sur l’épingle seraient dans le même écran que la carte, et affichées/masquées en jouant sur la propriété OnVisible des contrôles. En ajoutant à cela un fond un peu transparent (style popin) ou opaque (pour conserver l’impression de changement d’écran), il n’y aurait dans ce cas plus de rechargement de la carte.
CommentID=Vyg7n9ceOaZBUEG, PostID=nfrxoaYdjlrIFok