F1:UIElement.GotMouseCapture 事件:在此元素捕获鼠标时发生。

  1. 当元素捕获鼠标时,它接收鼠标输入,即使鼠标指针位于其边界外。 通常只有在执行拖放操作时才捕获鼠标,这种捕获状态将一直保持到发生拖放操作的放置操作为止。
  2. 由于此事件使用冒泡路由,因此具有捕获的元素可能是子元素,而不是实际附加事件处理程序的元素。 请检查事件数据中的 Source 以确定实际捕获鼠标的元素。
  3. 当 UIElement 作为基元素继承时,此事件会为该类的Mouse.GotMouseCapture 附加事件创建一个别名,以便GotMouseCapture 包含在该类的成员列表中。 附加到 GotMouseCapture 事件的事件处理程序将附加到基础 Mouse.GotMouseCapture 附加事件,并接收同一事件数据实例。

F2:DispatchTimer、与其他Timer:

  1. DispatcherTimer 类:集成到按指定时间间隔和指定优先级处理的 Dispatcher 队列中的计时器。

    1. 在每个 Dispatcher 循环的顶端重新计算 DispatcherTimer。
    2. 能保证会正好在时间间隔发生时执行计时器,但能够保证不会在时间间隔发生之前执行计时器。这是因为 DispatcherTimer 操作与其他操作一样被放置到 Dispatcher 队列中。何时执行 DispatcherTimer 操作取决于队列中的其他作业及其优先级。
    3. 使用 DispatcherTimer 而不是使用 System.Timers.Timer 的原因是DispatcherTimer 与 Dispatcher 运行于相同的线程,并且可以在 DispatcherTimer 上设置 DispatcherPriority。
    4. 每当将对象方法绑定到计时器时,DispatcherTimer 都将使对象保持活动状态。

clipboard.png

F3:FocusNavigationDirection 枚举:指定 用户界面 (UI) 内尝试所需焦点更改请求的方向。 该方向基于 Tab 键顺序,或者根据布局中的相关方向。

  1. Left、Right、Down 和 Up 中的每一个都根据项在呈现的窗口中的相对位置的近似表示在其方向上移动焦点。 并不一定能够进行所有这样的方向性移动,具体取决于 UI 的相对布局。

clipboard.png


李志玮
22 声望34 粉丝

求索~~


引用和评论

0 条评论