本文整理汇总了C#中MyDelegate.GetInvocationList方法的典型用法代码示例。如果您正苦于以下问题:C# MyDelegate.GetInvocationList方法的具体用法?C# MyDelegate.GetInvocationList怎么用?C# MyDelegate.GetInvocationList使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MyDelegate
的用法示例。
在下文中一共展示了MyDelegate.GetInvocationList方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
static void Main(string[] args)
{
MyClass obj = new MyClass();
MyDelegate del1 = new MyDelegate(obj.Func1);
del1 += new MyDelegate(obj.Func2);
//上面两句可以简写为以下形式:
//MyDelegate del1 = obj.Func1;
//del1 += obj.Func2;
Delegate[] ds;
ds = del1.GetInvocationList();
Console.WriteLine("del1的委托调用列表中包含{0}个方法", ds.GetLength(0));
del1(5); //先调用obj1.Func1(),再调用obj1.Func2()
MyDelegate del2 = new MyDelegate(obj.Func1);
del2 += new MyDelegate(obj.Func2);
//组合委托
Delegate mul = del1 + del2;
ds = mul.GetInvocationList();
Console.WriteLine("mul的委托调用列表中包含{0}个方法", ds.GetLength(0));
int ret = (mul as MyDelegate)(10); //获取委托调用列表最后一个方法的返回值
Console.WriteLine("ret = {0}", ret);
Console.ReadKey();
}