C#委托

所谓【委托】:顾名思义,就是把要做的事情交待给其他人做,在C#中,有时不方便实现跨类进行访问操作,此场景便是委托的一个重要且常用的应用场合。C#委托技术是后续 事件知识的学习基础内容。

【C#委托】的5个步骤:

【1】定义委托(字段):委托本质上是一个特殊的类,所以编码的位置一般情况下放在namespace下,与class同级;注意命名带一个Delegate在名称后;

namespace _TestDelegateDirJason
{
    public delegate void RecordDelgeate(String msg);//【1】定义委托字段。记录消息的委托;
    public partial class Form1 : Form

【2】定义委托变量;

  RecordDelgeate record1 = null;

 

【3】定义委托方法:定义符合委托签名(委托的格式)的函数;

  public void RecordMsg(string MsgStr)//【3】定义委托方法
        {
            string StrTime = DateTime.Now.ToString("yyyy-MM-dd  HH:mm:ss.fff");
            textBox1.Text += $"<{StrTime}>>{MsgStr}\r\n"; 
        }

【4】绑定委托:使用+=号来绑定/注册委托的方法;

record1 += RecordMsg;//委托1绑定2个同样签名的函数
            record1 += logSave.AddMsg;

 

【5】使用/调用委托;

record1("窗口打开");

///可以多次使用


 #region MyRegion//按钮按下事件
        private void button1_Click(object sender, EventArgs e)
        {
            record1(button1.Text + "按下");
        }

 

示例运行效果:

 

posted @ 2022-06-10 11:02  Stephen_Young  阅读(104)  评论(0)    收藏  举报