画布上的Silverlight缩放

画布上的Silverlight缩放,silverlight,zooming,Silverlight,Zooming,我在画布上添加了一些多段线,并为此画布上的缩放注册了一个事件处理程序,但缩放仅在鼠标正好位于多段线上方时有效。当鼠标位于画布上的其他位置时,如何使缩放工作正常?您在画布上设置了背景吗?鼠标事件通常仅在具有背景的元素上拾取。要拾取事件,画布必须具有: 大小-默认情况下,画布没有大小(可能更精确的是高度和宽度为0),但它可以有超出其边界的子对象。将子对象放入画布(与网格或其他面板不同)不会自动调整面板大小以适应内容 背景-可以是透明的(不透明度为=“0”或背景为=“#00FFFFFF”)的任何背景

我在画布上添加了一些多段线,并为此画布上的缩放注册了一个事件处理程序,但缩放仅在鼠标正好位于多段线上方时有效。当鼠标位于画布上的其他位置时,如何使缩放工作正常?

您在画布上设置了背景吗?鼠标事件通常仅在具有背景的元素上拾取。

要拾取事件,画布必须具有:

  • 大小-默认情况下,画布没有大小(可能更精确的是高度和宽度为0),但它可以有超出其边界的子对象。将子对象放入画布(与网格或其他面板不同)不会自动调整面板大小以适应内容
  • 背景-可以是透明的(不透明度为=“0”或背景为=“#00FFFFFF”)的任何背景

  • 某些事件可能还要求将事件参数的Handled属性设置为false,以允许事件从单击的对象(本例中为多段线)级联到画布本身。听起来你没有这个问题,但我会提到它,以防以后成为问题。

    +1好答案,包括将背景设置为“透明”的建议。