在我使用XAML和C#的地铁应用程序中,我需要在地图控件上绘制一些引脚。我发现了几个样本,其中所有这些样本都在代码后面的文件中绘制了针脚(将针脚作为儿童添加到地图控件中)。有没有可能以另一种方式? (类似于Windows Phone)WinRT在地图上绘制引脚
回答
您可以创建一个从ItemsControl派生的自定义控件。它将监视ViewModel中支持ObservableCollection的更改。然后,你可以只添加/减少引脚。
注意:这不一定是一个简单的任务。有一个原因是有公司为盈利创造复杂的控制,这当然是一个更复杂的控制。这几乎不可能,但需要完成一些工作,而不是成功。
为了让您一开始,它很可能需要:
- 有些背弃地图图像的
- 将坐标转换的引脚的能力(X,Y)像素的地图图象上的坐标
你很可能需要重写:
- 的MeasureOverride:找出多少空间地图需要
- ArrangeOverride:找出当前所有的孩子去
- OnDisconnectVisualChildren:当你删除一个引脚
- PrepareContainerForItemOverride做什么:创建一个项目容器的项目添加/删除
然后你可以继续添加诸如childtransitions之类的东西(所以他们'弹出')。然后,你需要做的就是设置虚拟机,加载你的引脚,然后你就可以参加比赛了。
好的编码!
你最好解释一下,当用户在全球各地盘旋时,你如何绘制地图上的点。我认为你的心理解决方案有一些实际问题。最好的方法是直接与地图层交互的AddPin()和RemovePin()方法。 – 2013-05-08 15:53:03
我想那些基本上分别是PrepareContainerForItemOverride和OnDisconnectVisualChildren,不是吗? – 2013-05-08 18:19:42
- 1. 在ConduitM上绘制地图?
- 2. 谷歌地图绘图管理器在引脚落下后开始绘制
- 3. 在地图上绘制圆图Matlab
- 4. 在地图视图上绘制MKCircle
- 5. 在世界地图上绘制图形
- 6. 在地图上绘制覆盖图
- 7. 绘制地图在地图控制
- 8. WinRT中RGB值的直方图绘制
- 9. Android - 在地图上绘制Android地图上的弹出窗口
- 10. 折线未绘制在地图上
- 11. 在网站地图上绘制XYZ
- 12. Polyline在Google地图上没有绘制
- 13. NetLogo:在地图上绘制pcolor:填充
- 14. 在android地图上绘制路径
- 15. OpenLayers无法在地图上绘制geoJSON
- 16. 在谷歌地图上绘制凸包
- 17. 在地图上绘制一条线
- 18. Rgooglemaps不在地图上绘制数据
- 19. 在地图上绘制路线(android)
- 20. 在地图上绘制矩形
- 21. Api在地图上绘制点
- 22. 如何在Bing地图上绘制shapefile
- 23. 如何在地图上绘制路线?
- 24. android如何在地图上绘制cricle
- 25. 在Google地图上绘制矩形
- 26. 单击 - 在地图上绘制MKPolyline
- 27. 在瓷砖地图上绘制精灵
- 28. 在Google地图上绘制标记
- 29. 让用户在Google地图上绘制?
- 30. 在地图上绘制路线
请指定一种什么样的另一种方式。非Windows手机开发人员无法解决您的问题。 – Xyroid 2013-04-30 07:04:04
我认为在Windows Phone上你有层次和ItemsControls,它们的项目可以绑定到具有地理坐标的对象集合,如图钉,路线或区域。不知道它是不是在Windows 8上有所不同。 – 2013-04-30 20:25:51
@FilipSkakun,我只希望W8地图与WP平价。您目前无法有效绑定(还)。 – 2013-05-08 15:51:50