zoukankan      html  css  js  c++  java
  • WPF 控件事件的一个小坑…

    最近想判断一下 Slider 是由鼠标点击而改变值,还是由程序内部代码改变的值,发现鼠标的各种事件比如 MouseDown、MouseUp、MouseLeftButtonDown 什么的,都没有任何反应,很是无奈…

    搜索了一下,发现 WPF 中的有些控件,会将一些事件自己给 Handled,导致我们之间添加事件无效。。。

    不过可以通过在父元素上调用 AddHandler 方法,来为子元素添加事件。

    这个方法有两个重载,这里最主要的是要用到这个重载的参数:

    public void AddHandler(
        RoutedEvent routedEvent,
        Delegate handler,
        bool handledEventsToo
    )

    第一个是要处理的事件类型,第二个是事件处理方法,第三个参数很关键,因为事件是逐一调用各处理方法的,这些处理方法中很可能会将 Handled 属性设为 true,表示事件不再需要其它处理方法来处理了,不过当这个参数传入 true 时,这里绑定的事件处理方法将不再受 Handled 属性的限制,依旧可以被调用,那么剩下就该干啥干啥去吧~

    MSDN:https://msdn.microsoft.com/zh-cn/library/ms598899(v=vs.100).aspx

  • 相关阅读:
    C语言考点例题解析
    五笔打字
    常用快捷键
    网络基础知识
    人口增长
    8 封装
    9 绑定方法和非绑定方法
    6 抽象类
    7 多态和多态性
    5 组合
  • 原文地址:https://www.cnblogs.com/xwgli/p/5119830.html
Copyright © 2011-2022 走看看