【问题标题】:Bing Map Silverlight control can't pan when user clicks on UIElement (Tunnelling Bubbling)当用户单击 UIElement(隧道冒泡)时,Bing 地图 Silverlight 控件无法平移
【发布时间】:2012-03-23 10:43:15
【问题描述】:

我在应用程序中使用 Silverlight Bing 地图控件。在地图上托管了一个带有各种 UIElement 的画布。

我目前观察到的一个问题是地图鼠标按下可以正确平移地图,除非鼠标按下源自UIElement(有问题的元素是 MapPolyLine)。

使用以下代码将 UIElements 添加到地图中

        var outlineBottom = new MapPolyline {
            Stroke = new SolidColorBrush(bottomColor),
            StrokeThickness = width * TrailBottomLineWidthMultiplier,
            Opacity = 1, //opacity,
            StrokeMiterLimit = 1,
            Locations = locations
        };

这会在地图中添加一条粗细约为 5px 的折线。当用户在地图上按下鼠标但鼠标指针在线上时,不能平移。

如何阻止 MapPolyline 吞噬鼠标事件,以便平移地图?

【问题讨论】:

  • 你试过 UIElement.IsHitTestVisible 吗?
  • 好的 - 我会添加作为答案 - 赚取我的积分 ;-)
  • 嗯,没有变化。 SilverlightSpy 报告 MapPolyLine 具有 IsHitTestVisible=true,即使在以编程方式将其设置为 false 后也是如此。 MapPolyLine 也有一个内部 PolyLine,它具有 IsHitTestvisible=True(我不确定我是否可以从 API 访问它)
  • @ColinE 我的错误,它确实有效,是在测试错误的元素。谢谢!

标签: silverlight mouseevent bing-maps uielement


【解决方案1】:

尝试在您的MapPolyline 上设置UIElement.IsHitTestVisible = false

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-07
    • 1970-01-01
    • 1970-01-01
    • 2018-05-21
    • 2013-05-20
    • 1970-01-01
    相关资源
    最近更新 更多