2014-01-18 3 views
0

Я писал приложение для Windows-телефона, используя визуальный телефон sdk, который дает мне адрес введенного адреса. Я смог это сделать (посмотрите ниже код), но он всегда перенаправляется на карты bing на следующей странице. Но я хотел добавить карту и текстовое поле на одной странице. Я введу местоположение в текстовое поле, и на картах будет показано местоположение (с использованием бинговой карты визуальной студии). Есть ли хороший пример, на который я могу ссылаться. Это будет большой помощью.нахождение местоположения bing map в C#

namespace PhoneApp3 
{ 
    public partial class MainPage : PhoneApplicationPage 
    { 
     // Constructor 
     BingMapsTask bmt = new BingMapsTask(); 
     GeoCoordinateWatcher gcw = new GeoCoordinateWatcher(); 
     public MainPage() 
     { 
      InitializeComponent(); 
      map1.CredentialsProvider = new ApplicationIdCredentialsProvider("Your API Key"); 
     } 

     private void button1_Click(object sender, RoutedEventArgs e) 
     { 
      GeoCoordinate gc = new GeoCoordinate(47,-127); 
      bmt.Center = gc; 

      bmt.ZoomLevel = 9; 

      LocationRect.CreateLocationRect(gc); 

      bmt.Show(); 

      //gcw.PositionChanged += new EventHandler<GeoPositionChangedEventArgs<GeoCoordinate>>(gcw_PositionChanged); 
      //gcw.Start(); 
     } 

     void gcw_PositionChanged(object sender, GeoPositionChangedEventArgs<GeoCoordinate> e) 
     { 
      textBox1.Text = e.Position.Location.Latitude.ToString(); 
      textBox2.Text = e.Position.Location.Longitude.ToString(); 
     } 

     private void button2_Click(object sender, RoutedEventArgs e) 
     { 
      BingMapsDirectionsTask bingMapsDirectionsTask = new BingMapsDirectionsTask(); 
      GeoCoordinate gc1 = new GeoCoordinate(47,-126); 
      GeoCoordinate gc2 = new GeoCoordinate(47, -127); 
      //LabeledMapLocation lml = new LabeledMapLocation("IIT Powai",) 
      LabeledMapLocation spaceNeedleLML = new LabeledMapLocation("",gc1); 
      LabeledMapLocation spaceNeedleLML2 = new LabeledMapLocation("",gc2); 
      bingMapsDirectionsTask.End = spaceNeedleLML; 
      bingMapsDirectionsTask.Start = spaceNeedleLML2; 
      // If bingMapsDirectionsTask.Start is not set, the user's current location is used as the start point. 

      bingMapsDirectionsTask.Show(); 
     } 

    } 
} 

ответ

0

BingMapsTask предназначен для запуска приложения Bing Maps как описано здесь: http://msdn.microsoft.com/en-us/library/windowsphone/develop/microsoft.phone.tasks.bingmapstask(v=vs.105).aspx

Если я правильно понимаю ваши требования правильно вы хотите добавить карту в ваших местах применения и геокодирования и показать их на карте не покидая приложение. Для этого вам нужно будет добавить карту в приложение как описано здесь: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj207045(v=vs.105).aspx

Вы можете геокодировании запрос, используя GeocodeQuery как описано здесь: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj244363(v=vs.105).aspx

Смежные вопросы