WPF 鼠标事件、拖放操作与经典控件详解
1. 鼠标命中测试属性
UIElement 类包含两个有助于鼠标命中测试的有用属性:
- IsMouseOver :用于确定鼠标当前是否悬停在某个元素或其某个子元素上。
- IsMouseDirectlyOver :用于确定鼠标是否悬停在某个元素上,但不是其某个子元素上。
通常,不会在代码中读取并处理这些值,而是使用它们来构建样式触发器,以便在鼠标悬停在元素上时自动更改元素。
2. 鼠标点击事件
鼠标点击事件的展开方式与按键事件类似,但左右鼠标按钮有不同的事件。以下是按发生顺序列出的鼠标点击事件:
| 名称 | 路由类型 | 描述 |
| — | — | — |
| PreviewMouseLeftButtonDown 和 PreviewMouseRightButtonDown | 隧道式 | 鼠标按钮按下时发生 |
| MouseLeftButtonDown | 冒泡式 | 鼠标按钮按下时发生 |
| PreviewMouseLeftButtonUp 和 PreviewMouseRightButtonUp | 隧道式 | 鼠标按钮释放时发生 |
| MouseLeftButtonUp 和 MouseRightButtonUp | 冒泡式 | 鼠标按钮释放时发生 |
所有鼠标按钮事件都会提供一个 MouseButtonEventArgs 对象。该类派生自 MouseEventArgs,包含相同的坐标和按钮状态信息,并添加了一些成员,其中较重要
超级会员免费看
订阅专栏 解锁全文
7136

被折叠的 条评论
为什么被折叠?



