Карты Bing Maps (Silverlight) - указание холста, который будет на переднем плане через XAML - PullRequest
1 голос
/ 29 ноября 2010

Ниже приведен код XAML, который я имею для реализации погоды Bing Maps Silverlight.

Вот что я пытаюсь сделать:

  1. Имейте карты bing с несколькими (более 100) кнопками - при наведении мыши - покажите contentpopup (canvas = myPopup) ниже. Достаточно просто.
  2. Все работает нормально - однако, когда mypopup отображается при наведении курсора мыши, он не находится на переднем плане (другие контакты отображаются поверх contentpopup), что делает его не очень читабельным.

Вопрос:

Как указать холст myPopup, указанный в XAML ниже, чтобы он всегда отображался на переднем плане, т. Е. На вершине большинства элементов управления Silverlight Bing Maps, когда пользователь просматривает его при наведении курсора.

Спасибо!


<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>

Ответы [ 2 ]

1 голос
/ 29 ноября 2010

Попробуйте добавить Canvas.ZIndex к элементу MapLayer , присвойте ему большое значение, например, 200, или добавьте свои булавки к другому MapLayer (вместо добавления булавок непосредственно к карте), который появляется перед этимвсплывающий слой в порядке документа.

0 голосов
/ 29 ноября 2010

Я сделал что-то похожее на это, но выбрал другой подход. То, что я сделал, - это создание собственного шаблона метки и создание всплывающего окна внутри шаблона.

Когда пользователь наводит курсор на кнопку, отображается всплывающее окно. Использование PopUp решит вашу проблему, так как элемент управления автоматически поместит его поверх всего . Попробуйте обернуть Canvas в PopPup и посмотрите, работает ли он.

чч

...