代码之家  ›  专栏  ›  技术社区  ›  Oleg Sakharov

我是否可以仅对右按钮事件将ishettestvisible设置为false?

  •  3
  • Oleg Sakharov  · 技术社区  · 16 年前

    很明显,这个问题的直接答案是“不”,但对我来说,达到这种效果的最好方法是什么?为了解释,这里有一点背景。。。

    我有一个应用程序,显示一个图像加上叠加在图像上的几层形状。所有这些都放置在一个网格单元中,彼此重叠,图像位于局部z阶的底部。为了提高速度,覆盖被实现为从FrameworkElement派生的类,它们创建和管理自己的视觉效果。


    overlapped_controls.png http://www.afterbang.co.uk/mal/stackoverflow/overlapped_controls.png


    如您所见,上面的覆盖必须允许用户拖出一个新的矩形 图像中的任何位置

    我真的只想抓住 左边

    对于这种事情,我是否应该遵循WPF思维模式?什么样的最佳实践或技术?

    我对WPF还很熟悉,但我想编写一个与API相协调的解决方案。谢谢。

    1 回复  |  直到 16 年前
        1
  •  1
  •   Nathan Wheeler    16 年前

    我会用 PreviewMouseDown 需要右键单击的元素上的事件,并使用 LeftMouseDown 在需要左键单击的元素上。这个 事件仍将触发,但您可以编写处理程序来忽略对它的左键单击。

    这实际上是我用来在图像上显示形状的一种模式,这样用户就可以圈出图像的一部分来突出显示它。我有 预览鼠标向下键 在图像上,它一直正常工作,然后我有一个 向左移动 任何形状上的处理程序,以便可以移动、删除它们等。

    推荐文章