initial location position error

3 posts, 0 answers
  1. Alex
    Alex avatar
    23 posts
    Member since:
    May 2005

    Posted 15 Nov 2011 Link to this post


    Again, not sure if I'm doing something wrong here or not.  I am using OpenStreetMapProvider and binding an information layer to two Location points with a custom display template. 

    The DataTemplate is;
    <Grid telerik:MapLayer.Location="{Binding Path=Location}" 
        <telerik:HotSpot Y="1.0" X="0.0"
            ElementName="PART_HotSpot" />
        <ColumnDefinition Width="12" />
        <ColumnDefinition Width="48" />
        <RowDefinition Height="10" />
        <RowDefinition Height="12" />
        <RowDefinition Height="Auto" />
      <Image x:Name="PART_HotSpot" 
         Grid.Row="1"  Grid.Column="0"  
         VerticalAlignment="Top" HorizontalAlignment="Left" 
         Source="{Binding Path=PinImageSource}" />
      <Border Grid.Row="0"  Grid.Column="1" 
         Background="#80000000" BorderBrush="Black" BorderThickness="1">
         <TextBlock VerticalAlignment="Center" 
              Text="{Binding Path=PortName}" 
              FontSize="7" FontFamily="Arial"

    The information layer is bound to an ObservableCollection<MyObject> where MyObject has a Location property exposed.

    When I initially load the UserControl (mapView_Loaded event handler), I "retrieve" the data.  This populates the ObservableCollection in the view model and fires the notifypropertychanged event which I have attached a handler in the UserControl in order to execute the GetBestView of the information layer.  My locations can be very close or opposite sides of the world, so want the map to auto-zoom.  When the points are initially displayed, the positions/location of the elements is wrong.  (see attached image startup_position.png).  If I pan, the locations remain incorrect, however, if I zoom in one level and back, the positions adjust and are placed correctly (see attached image zoomin_out_position.png) and are then fine afterwards when panning and zooming.  I tried different geo locations and zoom levels but it was the same.  The very first view is incorrectly positioned. Obviously I can't have the users needing to trigger a zoom to correctly position the elements. 

    The version I am using is outdated (Q3 2010, 2010.3.1314.1040), and upgrading is a very hard sell at the moment, so I'm stuck with what I have.  I'm hoping this is not an issue with this version.  Is there something I'm doing wrong here, or is this a bug that has been resolved in a newer release?

  2. Andrey
    Andrey avatar
    1681 posts

    Posted 18 Nov 2011 Link to this post

    Hi Alex,

    Unfortunately the build you use contains a problem with using the MapLayer.BaseZoomLevel attachable property within the item template of information layer. So, I would recommend to use the latest version of the map control.

    As an alternative way you can consider a scenario without using this property. For example you can use the item template selector and the InformationLayer.AllowDataTemplateForZoomLevel property for loading separate templates for each zoom level.

    Kind regards,
    Andrey Murzov
    the Telerik team

    Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get it now >>

  3. Alex
    Alex avatar
    23 posts
    Member since:
    May 2005

    Posted 22 Nov 2011 Link to this post

    Hello Andrey,

    I thought that might be the case.  I have passed this on to management and hopefully they will spring for an upgrade.

Back to Top