//3.创建可以激发路由事件的方法. protected override void OnClick() { base.OnClick(); ReportTimeEventArgs args = new ReportTimeEventArgs(ReportTimeEvent, this); args.ClickTime = DateTime.Now; this.RaiseEvent(args); }
private void ReportTimeHandler(object sender, ReportTimeEventArgs e) { FrameworkElement element = sender as FrameworkElement; string timeStr = e.ClickTime.ToString("HH:mm:ss") + ":" + e.ClickTime.Millisecond; string content = string.Format("{0}到达{1}", timeStr, element.Name); listbox1_1.Items.Add(content); //传递过程可终止 //如果传递过程中遇到了包含"panel"的元素,则不再继续传递 //if (element.Name.Contains("panel")) // e.Handled = true; }