• WPF 给用户控件增加自定义事件的记录


    第一步 在自定义控件里加上声明

            /// <summary>
            /// The click event
            /// </summary>
            public static readonly RoutedEvent userControlClickEvent = EventManager.RegisterRoutedEvent("UserControlClick", RoutingStrategy.Bubble, typeof(RoutedEventHandler), typeof(CommonButton));
    
            /// <summary>
            /// 控件点击的操作.
            /// </summary>
            public event RoutedEventHandler UserControlClick
            {
                add
                {
                    AddHandler(userControlClickEvent, value);
                }
    
                remove
                {
                    RemoveHandler(userControlClickEvent, value);
                }
            }

    第二步 给自定义控件的按钮的click里添加调用

            public void btnClick(object sender, RoutedEventArgs e)
            {
                RoutedEventArgs args = new RoutedEventArgs(userControlClickEvent, this);
                RaiseEvent(args);
            }

    第三步 外部调用该事件

                CommonButton button = new CommonButton();
                button.UserControlClick += Button_UserControlClick;
                button.Width = 200;
                button.Height = 200;
                button.ImagePathNormal = "/Images/LeftMenuButtons/left_menu_1_normal.png";
                button.ImagePathPressed = "/Images/LeftMenuButtons/left_menu_1_selected.png";
                button.SetValue(Canvas.ZIndexProperty, 999);
                button.SetValue(Canvas.LeftProperty, (double)0);
                button.SetValue(Canvas.TopProperty, (double)0);
    
                mainCanvas.Children.Add(button);
            private void Button_UserControlClick(object sender, RoutedEventArgs e)
            {
                MessageBox.Show("已执行");
            }
  • 相关阅读:
    MariaDB · 版本特性 · MariaDB 的 GTID 介绍
    stm8s 中断重复进入
    PCB积累
    链表的创建、增加、删除、改数据、遍历
    百度文库文字下载工具指引
    防倒灌的开关电路
    AD快速从原理图查找pcb中元件
    三目运算符填坑
    嵌入式结构化分层思想
    原码,反码,补码
  • 原文地址:https://www.cnblogs.com/wjx-blog/p/15455997.html
Copyright © 2020-2023  润新知