我已经根据官方文档将 XAML 元素添加到我的MapControl
中。
项目的中心离开地图边界时,它将不再绘制,因此当放大时,当中心不再可见时,大项目会消失。
就我而言,我在一个点周围绘制一个感兴趣区域的圆圈,但是当您放大到街道级别时,中心通常会离开地图并且圆消失。
如何确保 XAML 仍部分位于屏幕上而不仅仅是中心点时继续绘制?
我找出了特定的问题 - 在我的例子中,我附加的 XAML 项包含在Canvas
控件的顶层,该控件的ActualWidth
和ActualHeight
为零。据推测,剪辑发生在基于父容器的地图上,因此负边距和画布控件等可能会导致内容过早消失。
我重构了 XAML,因此顶层是一个Grid
,并且完全包含子项,并且映射按预期工作。
没有任何方法可以做到这一点。附加的 XAML 不是为了像这样在地面上绘制圆圈 - 它更多地用于将信息框等内容附加到需要 XAML 输入框的图钉,或者不仅仅是静态图像。对于地面上的圆,建议使用 MapPolygon:https://learn.microsoft.com/en-us/uwp/api/Windows.UI.Xaml.Controls.Maps.MapPolygon这也将在所有投影和视图中正常工作,而附加的 XAML 则不会(如果倾斜或旋转地图、从墨卡托更改为地球等,则绘制 XAML 多边形的边界将相对于地面移动)。