2012-05-31 2 views
1

Как показать информационное окно при нажатии на кнопки в Windows Phone 7? Ie, когда нажимайте на кнопку, чтобы показать некоторые данные и стрелку в правой части data.please, помогите мне ...Образцы на Pushpin infobox в windows phone 7 бинговых карт?

+0

В настоящее время я отображая булавку на map.but тома, как показать, что инфобокс при нажатии на это? – WP7

+0

Попробуйте http://igrali.wordpress.com/2012/01/07/show-a-tooltip-for-tapped-pushpin-on-windows-phone/ –

+0

Возможный дубликат [Как показать макет при нажатии на кнопочный переключатель в bingmaps?] (http://stackoverflow.com/questions/10793881/how-to-show-the-layout-when-click-on-pushpin-in-bingmaps) – MarcinJuraszek

ответ

0

Вы можете настроить ваш Pushpin

, например:

<my:Map Name="map1"> 

       <my:Map.Resources> 
        <DataTemplate x:Key="pushpinTpl"> 
         <my:Pushpin PositionOrigin="{Binding position}"> 
          <my:Pushpin.ContentTemplate> 
           <DataTemplate> 
            <ToggleButton x:Name="togButt" > 
             <Grid> 
              <TextBlock Text="click" 
                 Visibility="{Binding ElementName=togButt,Path=IsChecked,Converter={StaticResource BoolConverter},ConverterParameter=!}"/> 
              <TextBlock Text="alternative content" 
                 Visibility="{Binding ElementName=togButt,Path=IsChecked,Converter={StaticResource BoolConverter}}"/> 
             </Grid> 
            </ToggleButton> 
           </DataTemplate> 
          </my:Pushpin.ContentTemplate> 
         </my:Pushpin> 
        </DataTemplate> 
       </my:Map.Resources> 

       <my:MapItemsControl ItemsSource="{Binding items}" 
            ItemTemplate="{StaticResource pushpinTpl}" 
            /> 
      </my:Map> 

надеюсь, что это поможет :)

+0

Извините @ Dargos, я не получаю, можете ли вы дать образец по этому поводу. – WP7

1

при нажатии на канцелярской кнопки в то время отображать окно сообщения. то есть в ваших кликах событий поместить сообщение box.see сильфонных кодирования

     pin[i] = new Pushpin(); 
         pin[i].Location = new GeoCoordinate(Latitude, LongLatitude); 

         map1.Children.Add(pin[i]); 
         myCoorditeWatcher = new GeoCoordinateWatcher(GeoPositionAccuracy.High); 
         myCoorditeWatcher.MovementThreshold = 20; 

         var gl = GestureService.GetGestureListener(pin[i]); 
         gl.Tap += new EventHandler<GestureEventArgs>(GestureListener_Stack_Tap); 




private void GestureListener_Stack_Tap(object sender, Microsoft.Phone.Controls.GestureEventArgs e) 
     { 
      for (int i = 0; i <= ClsGetDeviceMap.lstLongLatitude.Count - 1; i++) 
      { 
       if (sender.Equals(pin[i])) 
       { 
        MessageBox.Show(ClsGetDeviceMap.lstLocationName.ElementAt<string>(i).Trim()); 
             MessageBox.Show(ClsGetDeviceMap.lstLatitude.ElementAt<string>(i).Trim()); 
        MessageBox.Show(ClsGetDeviceMap.lstLongLatitude.ElementAt<string>(i).Trim()); 

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