1123_C#_自定义事件

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Winform_EvnetTest
{
    public partial class Form1 : Form
    {
        // 1.自定义事件
        public class TextChangeEventArgs : EventArgs
        {
            private string message;
            public TextChangeEventArgs(string message)
            {
                this.message = message;
            }

            public string Message
            {
                get { return message; }
            }
        }

        //2.1 定义委托
        public delegate void TextBoxChangedHandle(object sender, TextChangeEventArgs e);
        //2.2 定义事件
        public event TextBoxChangedHandle UserControlValueChanged;
        //2.3 
        private void textBox1_TextChanged(object sender, System.EventArgs e)
        {
            if (UserControlValueChanged != null)
                UserControlValueChanged(this, new TextChangeEventArgs(this.textBox1.Text));

            MessageBox.Show(this.textBox1.Text);
        }

        public Form1()
        {
            InitializeComponent();

            //3.注册事件
            this.textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged);
        }
    }
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容