реализация карт Bing в Windows Phone 7 - PullRequest
1 голос
/ 09 декабря 2011

Я новичок в Windows Phone 7, пожалуйста, помогите мне

<phone:PhoneApplicationPage 
    x:Class="Sample1.PanoramaPage1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
    xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
    xmlns:controls="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="800"
    FontFamily="{StaticResource PhoneFontFamilyNormal}"
    FontSize="{StaticResource PhoneFontSizeNormal}"
    Foreground="{StaticResource PhoneForegroundBrush}"
    SupportedOrientations="Portrait"  Orientation="Portrait"
    shell:SystemTray.IsVisible="False"
    xmlns:m="clr-namespace:Microsoft.Maps.MapControl;assembly=Microsoft.Maps.MapControl"
    xmlns:my="clr-namespace:Microsoft.Phone.Controls.Maps;assembly=Microsoft.Phone.Controls.Maps">
    <my:Map x:Name="map1" CredentialsProvider="{Binding CredentialsProvider}" Height="462" HorizontalAlignment="Left" Margin="6,6,0,0"  VerticalAlignment="Top" Width="444" >
                    <my:MapItemsControl x:Name="mapItemsControl" ItemsSource="{Binding Path=Locations}">
                    <my:MapItemsControl.ItemTemplate>
                        <DataTemplate>
                            <m:Pushpin  MouseLeftButtonUp="Pushpin_MouseLeftButtonUp" Background="Red" Location="{Binding}">

                            </m:Pushpin>
                        </DataTemplate>
                    </my:MapItemsControl.ItemTemplate>
                </my:MapItemsControl>
                </my:Map>

А мой .xaml.cs такой:

public PanoramaPage1()
        {
            InitializeComponent();
            //map1.Mode = new RoadMode();  
            Pushpin pushpin = new Pushpin();
            Location location = new Location();
            location.Latitude = 53.550556;
            location.Longitude = 9.993333;
            pushpin.Location = location;
            pushpin.Background = new SolidColorBrush(Colors.Red);
            map1.Children.Add(pushpin);
}

если мы увидим, что у меня есть два (2) элемента управления картой, добавляются на страницу те, которые

XMLNS: м = "CLR-имена: Microsoft.Maps.MapControl; сборка = Microsoft.Maps.MapControl" XMLNS: мой = "CLR-пространства имен: Microsoft.Phone.Controls.Maps; сборочный = Microsoft.Phone.Controls.Maps"

если я использую карту канцелярской кнопки Microsoft.Maps.MapControl, но код ниже не работает.

<m:Map.Mode>
                <m:AerialMode ShouldDisplayLabels="True" />
                </m:Map.Mode>

выдает ошибку, поскольку "свойство 'ShouldDisplayLabels' не найдено в типе 'AerialMode'."

Если я использую карту Microsoft.Phone.Controls.Maps, то канцелярская кнопка не работает означает, что канцелярская кнопка остается стабильной, когда мы перемещаем карту (карта движется, но канцелярская кнопка остается стабильной). А также, если добавить две кнопки, как показано ниже:

 public PanoramaPage1()
            {
                InitializeComponent();
                //map1.Mode = new RoadMode();

                GeoCoordinate lHamburg = new GeoCoordinate(53.550556, 9.993333);

                Pushpin pushpin = new Pushpin();
                Location location = new Location();
                location.Latitude = 53.550556;
                location.Longitude = 9.993333;
                pushpin.Location = location;
                pushpin.Background = new SolidColorBrush(Colors.Red);
                map1.Children.Add(pushpin);

                pushpin = new Pushpin();
                location = new Location();
                location.Latitude = 83.550556;
                location.Longitude = 9.993333;
                pushpin.Location = location;
                pushpin.Background = new SolidColorBrush(Colors.Yellow);
                map1.Children.Add(pushpin);
    }

только второй канцелярский значок (Colors.Yellow), который я могу видеть на карте.

Пожалуйста, помогите мне.

1 Ответ

1 голос
/ 03 февраля 2012

У вас есть два экземпляра с именами «канцелярская кнопка»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...