首页 > 代码库 > 自定义路由事件
自定义路由事件
自定义路由事件大体上可分为三个步骤:
1、声明并注册路由事件;
2、为路由事件添加CLR事件包装;
3、创建可以激发路由事件的方法。
主要的示例代码如下:
1、声明并注册路由事件;
2、为路由事件添加CLR事件包装;
3、创建可以激发路由事件的方法。
主要的示例代码如下:
public class TimeButton : Button { /// <summary> /// 声明并注册路由事件。 /// </summary> public static readonly RoutedEvent ReportTimeEvent = EventManager.RegisterRoutedEvent("ReportTime", RoutingStrategy.Bubble, typeof(EventHandler<ReportTimeEventArgs>), typeof(TimeButton)); /// <summary> /// CLR事件包装器。 /// </summary> public event RoutedEventHandler ReportTime { add { this.AddHandler(ReportTimeEvent, value); } remove { this.RemoveHandler(ReportTimeEvent, value); } } /// <summary> /// 激发路由事件,借用Click事件的激发方法。 /// </summary> protected override void OnClick() { base.OnClick(); ReportTimeEventArgs args = new ReportTimeEventArgs(ReportTimeEvent, this); args.ClickTime = DateTime.Now; this.RaiseEvent(args); } }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。