2011-01-11 15 views
2

私の究極の目標は、WP7アプリケーションのBingマップ上にカスタム画像を持つプッシュピンを持つことです。私は、制御テンプレートと押されたマップを作成しました。今は、デフォルトのプッシュピンを表示することができますが、テンプレートを作成しようとすると何も表示されません。ここで私が今持っているものです。WP7 Bing Maps画像付きのプッシュピンテンプレートが表示されない

<phone:PhoneApplicationPage.Resources> 
    <ControlTemplate x:Key="PushpinControlTemplate" TargetType="my:Pushpin"> 
     <Image Source="/Images/Pins/pin.png" /> 
    </ControlTemplate> 
</phone:PhoneApplicationPage.Resources> 

<my:Map Name="mapMain" CredentialsProvider="CredKey"> 
    <my:Pushpin/> 
</my:Map> 

私が適用された場合PushpinControlテンプレートは何も現れません:私はテンプレートを削除した場合

<my:Pushpin Template="{StaticResource BoaPushpinControlTemplate}" /> 

、それはデフォルトの黒の形状を示しています。

テンプレートを間違って実行する必要がありますが、問題の内容がわかりません。 ControlTemplateにイメージを置くことはできませんか?

+0

Mr Sillyと呼んでください。ただ議論のために、リテラル座標を指定して、そこに何かが現れているかどうかを調べてみてください。私はリテラルで初期化されていない限り、ピンが動作しないという奇妙な振る舞いをしています(私はユーザーアクションに応じてコード内の位置を設定します)。 –

答えて

1

あなたは地図上の結合ItemSourceを使用してアレント場合は、これでもスレッドかかわら

<maps:Pushpin Location="{Binding Location}"> 
      <Image Source="/Images/Pins/pin.png" /> 
    </maps:Pushpin> 

それとも、動的プッシュピンを埋める場合

<maps:Map x:Name="map" > 
    <maps:MapItemsControl ItemsSource="{Binding Collection}"> 
     <maps:MapItemsControl.ItemTemplate> 
      <DataTemplate> 
       <maps:Pushpin Location="{Binding Location}"> 
        <Image Source="/Images/Pins/pin.png" /> 
       </maps:Pushpin> 
      </DataTemplate> 
     </maps:MapItemsControl.ItemTemplate> 
    </maps:MapItemsControl> 
</maps:Map> 
+0

良い考えですが、それは問題ではありませんでした。私は高さと幅を追加し、まだ見えません。 – CACuzcatlan

1

以下のアプローチを使用し、簡単なコンテンツ制御アプローチを使用ちょっと古いです。私は私の提案を掲示するつもりです:

このリンクを試してくださいWorking with Pushpins、それは私のために働いていますそれを押しピン宣言に入れてください)

(App.xaml、名前空間を忘れないでください!

xmlns:m="clr-namespace:Microsoft.Phone.Controls.Maps;assembly=Microsoft.Phone.Controls.Maps" > 

<Application.Resources>  
    <Style TargetType="m:Pushpin" x:Key="PushpinStyle"> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="m:Pushpin"> 
        <Image Width="24" Height="24" Source="path_to_pic" /> 
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
    </Style> 

()マップがあるが、XAMLで

<Grid x:Name="LayoutRoot" Background="Transparent"> 
    <m:Map x:Name="Map" Mode="Aerial" 
       CredentialsProvider="CredKey"> 
     <m:MapItemsControl x:Name="Content"> 
      <m:MapItemsControl.ItemTemplate> 
       <DataTemplate> 
        <m:Pushpin Location="{Binding Location}" Style="{StaticResource PushpinStyle}" /> 
       </DataTemplate> 
      </m:MapItemsControl.ItemTemplate> 
     </m:MapItemsControl> 
    </m:Map> 
</Grid> 

あなたの写真のビルドアクションがコンテンツに設定されている場合は、このチェックを動作しない場合。

私はこのことを理解するためにしばらく時間がかかりました。だから、このスレッドは古いにもかかわらず、誰かを助けてくれることを願っています。 ;)

関連する問題