链式委托
链式委托是指一个由委托串成的链表,当链表上的一个委托被回调时,所有链表上该委托的后续委托将会被顺序执行。
csharp
using System;
namespace MulticastDelegate
{
class Program
{
/// <summary>
/// 定义委托
/// </summary>
public delegate void TestMultiDelegate();
static void Main(string args)
{
// 申明一个委托变量,并绑定第一个方法
TestMultiDelegate handler = new TestMultiDelegate(PrintMessage1);
// 绑定第二个方法
handler += new TestMultiDelegate(PrintMessage2);
// 绑定第三个方法
handler += new TestMultiDelegate(PrintMessage3);
// 检查结果
// Output :
// 第一个方法
// 第二个方法
// 第三个方法
handler();
Console.Read();
}
static void PrintMessage1()
{
Console.WriteLine("第一个方法");
}
static void PrintMessage2()
{
Console.WriteLine("第二个方法");
}
static void PrintMessage3()
{
Console.WriteLine("第三个方法");
}
}
}