111,125
社区成员
发帖
与我相关
我的任务
分享public delegate void MyTaskEventHandler(int taskId);
但是当编译之后系统会自动为你的delegate生成一个Class, 这个Class会继承自System.MulticastDelegate。
所以委托的实质就是一个Class。只是你能做的就是使用delegate关键字去定义一个新的委托。public delegate void CompletedEventHandler(TestCaseBase sender);
编译之后使用工具看一下,可以发现编译出来的结果是(MSIL语言).class auto ansi sealed nested public CompletedEventHandler
extends [mscorlib]System.MulticastDelegate
{
.method public hidebysig specialname rtspecialname instance void .ctor(object 'object', native int 'method') runtime managed
{
}
.method public hidebysig newslot virtual instance class [mscorlib]System.IAsyncResult BeginInvoke(class WpfEngine.TestCaseBase sender, class [mscorlib]System.AsyncCallback callback, object 'object') runtime managed
{
}
.method public hidebysig newslot virtual instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed
{
}
.method public hidebysig newslot virtual instance void Invoke(class WpfEngine.TestCaseBase sender) runtime managed
{
}
}