This is a migrated thread and some comments may be shown as answers.

MapPinPoint no longer contains Hotspot property

6 Answers 173 Views
Map
This is a migrated thread and some comments may be shown as answers.
Felician Balint
Top achievements
Rank 1
Felician Balint asked on 11 Nov 2010, 11:03 AM
I've just downloaded Q3 and noticed just one error when rebuilding the app (which is excellent). Unfortunately it's related to this property and I haven't found out where Hotspot property went.

Does anybody have any idea if Hotspot still exists or how I can replace it? (Hotspot class still exists just I have no idea how to set a hotspot for a pinpoint anymore)

6 Answers, 1 is accepted

Sort by
0
Alexey Oyun
Top achievements
Rank 1
answered on 12 Nov 2010, 10:18 AM
Hi,

Got same problem, just updated to Q3.
And now HotSpot in map does not respect size, location, zoomrange, basezoomlevel.

Simply, it is just not working.

Any update on how to fix it, or at least documentation, since right now documentation for map shows "An error occured while processing your request. "

Any help?

Alexey.
0
Alexey Oyun
Top achievements
Rank 1
answered on 12 Nov 2010, 11:55 AM
Hi,
I have solved my problem.

In Q2 I was using Map:MapLayer.Location in template:
<DataTemplate x:Key="HotSpotTemplate">
                <Border Cursor="Hand"
                                Map:MapLayer.BaseZoomLevel="{Binding Path=BaseZoomLevel}"
                                Map:MapLayer.Location="{Binding Path=Location, Converter={StaticResource Test}}"
                                Map:MapLayer.ZoomRange="{Binding Path=ZoomRange}">

No, I am using Information layer data mapping:
<Map:InformationLayer Name="hotSpotInformationLayer"
                                                    ItemTemplate="{StaticResource HotSpotNew}"
                                                    ItemsSource="{Binding HotSpots}">
            <Map:InformationLayer.DataMappings>
                <Map:DataMapping FieldName="Location" ValueMember="Location"/>
                <Map:DataMapping FieldName="BaseZoomLevel" ValueMember="ZoomLevel"/>
                <Map:DataMapping FieldName="ZoomRange" ValueMember="ZoomRange"/>
            </Map:InformationLayer.DataMappings>
        </Map:InformationLayer>
        <Map:InformationLayer Name="bubbleInformationLayer"
                                                    ItemTemplate="{StaticResource BubbleTemplate}"
                                                    ItemsSource="{Binding Bubbles}">
        </Map:InformationLayer>

Hope, will help someone.

Thanks, Alex
0
Andrey
Telerik team
answered on 12 Nov 2010, 04:41 PM
Hi Felician Balint,

We've made behavior of the hot spot on MapPinPoint more consistent with other framework elements. You can set it as attachable property:

MapPinPoint pinPoint = new MapPinPoint();
pinPoint.Text = "My pin point";
MapLayer.SetLocation(pinPoint, new Location(0, 0));
HotSpot hotspot = new HotSpot()
{
    X = 0,
    Y = 0
};
MapLayer.SetHotSpot(pinPoint, hotspot);


Regards,
Andrey Murzov
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Nemanja
Top achievements
Rank 1
answered on 07 Dec 2012, 11:55 AM
Hi Andrey,

How would one do this in XAML? 

We're struggling to set the position of our pin point as they are being positioned a bit too low instead of on the exact location point. This is the code we use to set it up. The values we enter in the X and Y values of the hotspot make no difference at all. 

Even if the values are huge like 500000 or 0.5 it looks the same...

<telerik:InformationLayer ItemsSource="{Binding Stores, Mode=TwoWay}">
            <telerik:InformationLayer.ItemTemplate>
              <DataTemplate>
                <telerik:MapPinPoint telerik:MapLayer.Location="{Binding Location}"
                                     telerik:RadToolTipService.IsEnabled="True"     
                                     telerik:RadToolTipService.Placement="Right"
                                     VerticalAlignment="Top"
                                     ImageSource="maps.png"
                                     ImageScale="1.5" >
                  <telerik:MapPinPoint.ToolTip>
                    <ToolTip Style="{StaticResource ToolTipStyle}"/>
                  </telerik:MapPinPoint.ToolTip>
                  <telerik:MapLayer.HotSpot>
                    <telerik:HotSpot X="0.5" Y="0" />
                  </telerik:MapLayer.HotSpot>
                </telerik:MapPinPoint>
              </DataTemplate>
            </telerik:InformationLayer.ItemTemplate>
          </telerik:InformationLayer>



Thanks,
Nemanja
0
Andrey
Telerik team
answered on 12 Dec 2012, 08:33 AM
Hi Nemanja,

Thank you for the feedback.
There is a problem with using MapLayer.HotSpot property for the MapPinPoint control when the MapPinPoint is used in DataTemplate. In fact this problem occurs only in WPF version of RadMap. We have created the PITS issue to avoid this problem in future versions of our control. You can track it using the following link:
http://www.telerik.com/support/pits.aspx#/public/wpf/13705

As workaround you can use simple template which uses Image control instead of the MapPinPoint. You can use a fixed size for the image instead of using the MapPinPoint.ImageScale property. The sample code is below.

<DataTemplate>
    <Grid telerik:MapLayer.Location="{Binding Location}"
          telerik:RadToolTipService.IsEnabled="True"    
          telerik:RadToolTipService.Placement="Right">
        <Grid.ToolTip>
            <ToolTip Style="{StaticResource ToolTipStyle}"/>
        </Grid.ToolTip>
        <telerik:MapLayer.HotSpot>
            <telerik:HotSpot X="0.5" Y="0"/>
        </telerik:MapLayer.HotSpot>
        <Image Width="24" Height="24"
               Source="maps.png" />
    </Grid>
</DataTemplate>

All the best,
Andrey Murzov
the Telerik team

Explore the entire Telerik portfolio by downloading Telerik DevCraft Ultimate.

0
Nemanja
Top achievements
Rank 1
answered on 12 Dec 2012, 02:22 PM
Hi Andrey,

Thanks for the workaround, I managed to get the right behaviour this way with a bit of fiddling with the X and Y values, but it works well now.

Nemanja
Tags
Map
Asked by
Felician Balint
Top achievements
Rank 1
Answers by
Alexey Oyun
Top achievements
Rank 1
Andrey
Telerik team
Nemanja
Top achievements
Rank 1
Share this question
or