【发布时间】:2018-01-24 19:18:01
【问题描述】:
我创建了一个自定义光标并通过 Cursor 属性将其应用于我的控件,当鼠标悬停在控件上时它会正确显示,但是一旦我单击,光标就会变回默认值。我想要的是自定义光标在鼠标按下(并可能被移动)时保持不变,并在鼠标出现时恢复正常(在任何可能的控制上)。我意识到我可以通过在鼠标按下时设置 Mouse.OverrideCursor 来做到这一点,但我不确定当鼠标出现时如何设置覆盖光标,因为它可以在屏幕上的任何位置释放。我想要的行为类似于单击单元格并在 Excel 中拖动。有人对我如何实现这种行为有任何建议吗?
编辑:
我尝试遵循此答案中的建议:https://stackoverflow.com/a/2986757/3818295 但是我的 PreviewMouseLeftButtonUp 处理程序永远不会被调用。
【问题讨论】:
-
我猜你的
PreviewMouseLeftButtonUp处理程序没有被调用,因为鼠标是在与你订阅的控件不同的控件上释放的。捕获鼠标可以避免这个问题。详情见我的回答。