2010-11-28 9 views
1

以下は、Bing Maps Silverlightの天気関連の実装で使用しているXAMLコードです。ここでBing Maps(Silverlight)マップ - キャンバスをXAMLでフォアグラウンドに指定する

は私がやろうとしていますものです:

  1. はマウスオーバーでpushpins-(100以上)、いくつかのとビングマップは持っている - 以下contentpopup(キャンバス= myPopup)を示しています。十分に簡単です。
  2. しかし、mypopupがmouseoverで表示されるとき、フォアグラウンドにはありません(他のピンはcontentpopupの上に表示されます)。

質問:私は常に最前面に表示されるには、以下のXAMLで指定myPopupキャンバスを、specifiyするにはどうすればよい

すなわちトップユーザーがマウスオーバーでそれを見てBing MapsのSilverlightのコントロールのほとんど。

ありがとうございます!


<Grid x:Name="LayoutRoot" Background="White"> 
    <m:Map x:Name="GlobalMap" Mode="Road" Center="15,7" ZoomLevel="2" CredentialsProvider="{StaticResource MyCredentials}" Margin="-70,-40,-100,-72"> 

     <m:MapLayer x:Name="myLayer"> 
      <Canvas x:Name="myPopup" Visibility="Collapsed" Opacity="1"> 
       <Rectangle x:Name="myPopupRectangle" Fill="White" Canvas.Left="0" Canvas.Top="0" Height="100" 
          Width="100" RadiusX="15" RadiusY="15"/> 
       <StackPanel Canvas.Left="8" Canvas.Top="8"> 
        <TextBlock x:Name="myPopupTexts" FontSize="5" Width="100"> 
        </TextBlock> 

       </StackPanel> 
      </Canvas> 
     </m:MapLayer> 
    </m:Map> 
</Grid> 

答えて

0

私はこれに似た何かをしたが、別のアプローチを取りました。私がやったのは、カスタムの圧伸テンプレートを作成し、テンプレート内にPopUpを作成することでした。

ユーザーが押しピンの上を飛ぶと、ポップアップが表示されます。 PopUpを使用すると、問題が解決します。コントロールは自動的にすべての上に配置されるためです。キャンバスをポップアップでラップし、それが動作するかどうかを確認してください。この先の表示されます

HTH にMapLayer要素にCanvas.ZIndexを追加

+0

あなたの感謝のおかげで、カスタム押しピンポップアップは、(私はキャンバスの一部として表示されている)HTMLタグを処理することはできません。そのオプションは私のニーズに対応していません。私はキャンバスに常に最前線/前景(他のすべての上に表示される)に表示されるプロパティがあることを望んでいます。 – Simba

1

てみてください、それを200のような大きな価値を与えるか(むしろマップに直接ピンを追加するよりも)他にMapLayerにあなたのプッシュピンを追加ポップアップレイヤーをドキュメント順に表示します。

関連する問題