none
Pushpin Bing map RRS feed

  • Question

  • Salut,

    je viens de localiser quelques positions dans ma BingMap mais lorsque j'insère un pushpin il m'apparait dans un cadre noir! 

    comment je pourrais eviter ce cadre noir et afficher seulment mon pushpin??

    Merci

    jeudi 21 juillet 2011 10:22

Réponses

  • il faut que tu ajoutes ton ton style dans la resource de ta page :

    <phone:PhoneApplicationPage>

     

        <phone:PhoneApplicationPage.Resources>

    <------ ICI ---->

     

    </phone:PhoneApplicationPage.Resources>

     

     

    Sinon avec expression blend, tu fais un clic droit sur ton pushpin, et tu fais clic droit > template > create a copy

     

     

     

    • Marqué comme réponse Zied Nassr samedi 23 juillet 2011 07:55
    vendredi 22 juillet 2011 15:23
    Modérateur

Toutes les réponses

  • Bonjour,


    Tu as essayé de passer la propriété Background de ton Pushpin à Transparent ?
    Sinon, il est possible de customiser ton PushPin et de jouer avec son style.

     

     <my:Pushpin Name=”myPushPin″ Background=”Transparent” />
    

     


    vendredi 22 juillet 2011 06:59
  • salut, oui j'ai essayé cette propriété mais sa marche pas! le pushpin apparait encore dans un bloc noir

    :(


    zied
    vendredi 22 juillet 2011 09:44
  • Tu peux décrir ton pushpin tel qu'il est ? (Image, texte ?)

    Car sinon, il te reste la solution ultime, c'est modifier le template du contrôle même. ça te permettra aussi de changer la forme du polygone par défaut et avoir quelque chose qui te correspond davantage. Tu pourras même avoir une image carrément à la place du pushpin classique. 
    David POULIN
    vendredi 22 juillet 2011 10:15
  • voila sa description:

     ImageBrush image = new ImageBrush()

                    {

                        ImageSource = new System.Windows.Media.Imaging.BitmapImage

                                        (new Uri("http://www.clker.com/cliparts/1/9/e/8/131123856185123220gps_localisation-md.png"))    };

     

                    Pushpin p1 = new Pushpin();

                    p1.Content = new Ellipse()

                    {

                        Fill = image,

                        StrokeThickness = 10,

                        Height = 100,

                        Width = 100

     

                    };

     

     

    Merci


    zied
    vendredi 22 juillet 2011 11:46
  • Oki, tu ne t'y prends pas bien malheureusement.

    Il te faut créer tout d'abord 1 style qui correspond à celui que tu veux pour ton pushpin.

    Voici 2 exemples de style (le 1ier correspond à celui que tu as essayé de faire dans ton C#, et le second est un style simple pour atteindre ton objectif :

    <Style TargetType="my:Pushpin" x:Key="PushpinStyle1">
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="my:Pushpin">
                <Grid Margin="0">
                    <Ellipse
                    Width="100" Height="100"
                    HorizontalAlignment="Center"
                    VerticalAlignment="Center"
                    StrokeThickness="10">
                      <Ellipse.Fill>
                        <ImageBrush ImageSource="http://www.clker.com/cliparts/1/9/e/8/131123856185123220gps_localisation-md.png"/>
                      </Ellipse.Fill>
                    </Ellipse>
                    <ContentPresenter HorizontalAlignment="Center"
                        Content="{TemplateBinding Content}"
                        ContentTemplate="{TemplateBinding ContentTemplate}"
                        Margin="0"/>
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
        </Style>
    
        <Style TargetType="my:Pushpin" x:Key="PushpinStyle2">
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="my:Pushpin">
                <Grid Width="100" Height="100" Margin="0">
                  <Image Source="http://www.clker.com/cliparts/1/9/e/8/131123856185123220gps_localisation-md.png" Stretch="Fill"/>
                </Grid>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
        </Style>
    


    Ensuite, pour pouvoir attribuer le style à ton pushpin, il te faut faire ceci :

     

    Pushpin pin1 = new Pushpin();
    //Si le style est dans la même page que là ou tu l'utilises
    pin1.Style = (Style)(this.Resources["PushpinStyle1"]);
    
    
    

    Bon courage :-)

     


    David POULIN, Expert .NET (WPF, Silverlight et Windows Phone) chez Soat
    • Proposé comme réponse David_Poulin samedi 23 juillet 2011 08:31
    vendredi 22 juillet 2011 12:56
  • oki Merci infinement mais comment je peux eviter l erreur :

    Error 3 A value of type 'Style' cannot be added to a collection or dictionary of type 'UIElementCollection'.

    Merci.


    zied
    vendredi 22 juillet 2011 13:33
  • Ou as-tu mis ton style ? Tu peux mettre le code ici s'il te plait ?
    David POULIN, Expert .NET (WPF, Silverlight et Windows Phone) chez Soat
    vendredi 22 juillet 2011 14:03
  • il faut que tu ajoutes ton ton style dans la resource de ta page :

    <phone:PhoneApplicationPage>

     

        <phone:PhoneApplicationPage.Resources>

    <------ ICI ---->

     

    </phone:PhoneApplicationPage.Resources>

     

     

    Sinon avec expression blend, tu fais un clic droit sur ton pushpin, et tu fais clic droit > template > create a copy

     

     

     

    • Marqué comme réponse Zied Nassr samedi 23 juillet 2011 07:55
    vendredi 22 juillet 2011 15:23
    Modérateur
  • bon Merci sa marché en mettant le style dans:

     

     

        <phone:PhoneApplicationPage.Resources>

    <------ ICI ---->

     

     

    </phone:PhoneApplicationPage.Resources>

     


    zied
    samedi 23 juillet 2011 07:55