The few examples and forum posts that I have found all use KML layers defined in XAML at design-time with nested MapTip
templates binding to one or more Placemark
attributes e.g. name
or ExtendedData
values (using the ExtendedDataConverter
class provided in the example here).
I am looking for a way to programmatically configure map tips on a programmatically-created KML layer at runtime. I can display empty map tips if I assign a MapTip
instance to every Graphic
in the KmlLayer
, but cannot figure out how to dynamically bind the MapTip
to the Attribute
data in the Graphic
. I have inspected the graphic elements and confirmed that they do indeed contain the correct attribute data from the KML document.
Does anyone have an idea as to how this can be accomplished?
Best Answer
KmlLayer is alien to me, but I see it has a MapTip property same as FeatureLayer. Here's what we've got for FeatureLayers. These two lines are present in my main MapPage.xaml.cs in an event handler for the layer Initialized event.
We are using the PopupWindow class from the ESRI.SilverlightViewer.Controls library distrubuted with this viewer (from which we've learned a great deal, BTW), but PopupWindow simply derives from ContentControl, so rolling one's own is minor, if you want.