在FeatureLayer的Initialized事件中,MapTip通过Template加载自定义的控件模板,然后创建一个Canvas承载MapTip,并添加到页面上。
Private Sub FeatureLayer_Initialized(ByVal sender As Object, ByVal e As EventArgs) Dim c As Canvas = New Canvas Dim mt As MapTip = New MapTip() With {.Template = CType(Application.Current.Resources("myMapTipTemplate"), ControlTemplate)} mt.GraphicsLayer = fl c.Children.Add(mt) LayoutRoot.Children.Add(c) End Sub
自定义的控件模板如下:
<ControlTemplate x:Key="myMapTipTemplate"> <Grid> <StackPanel> <TextBlock Text="测试" /> </StackPanel> </Grid> </ControlTemplate>