我在MapControl中定义了不同的XAML线控件。它们会更改旋转,颜色等,因此我认为最好使用应该保持静态的MapPolyline线。
在地图上平移时,我发现当线条的原点不在MapControl之外时,线条有时会消失,有时不会消失。它们仅在右侧或下侧的MapControl BUT外部消失。平移左侧或上方时不会发生这种情况。
很明显,我每次都希望它们出现在屏幕上,我不想消失。
知道为什么会发生吗?我怎么能一直看到它们?
答案 0 :(得分:1)
似乎有一些代码可根据附加点是否在视口中来切换附加XAML项的可见性。您可以通过沿线引入其他点来解决此问题。 通常,在大多数情况下,建议使用MapElements而不是附加的XAML。 XAML实际上仅应用于具有丰富UI的对话框之类,在该对话框中,此类对象附加在地图上的相对较少。即使在您想要更新属性和位置的情况下,MapPolyline的性能也会更好,并且与地图运动保持同步的效果比XAML要好得多。
答案 1 :(得分:0)
我找到了解决消失线问题的方法。
所有在MapControl上的线条和XAML形状都应在画布内分组,并以正确的宽度和高度进行宽度设置(在我的情况下,这两个线条在尺寸以及负向和正向的最大长度,居中/将画布锚定在MapControl.Center中,并使用边距进行播放以正确地适应所有控件。
对于我所做的所有测试,即使起点和终点都不在屏幕中,线条仍会保留在屏幕中。