订阅活动

bob*_*bbo 3 .net c# events delegates

在.NET中订阅事件时,我需要创建一个新的委托实例,例如

toolbarControl1.OnUploadEventHandler += 
    new ToolbarControl.UploadEventHandler(toolbarControl1_OnUpload);
Run Code Online (Sandbox Code Playgroud)

或者做以下事情更好吗?

toolbarControl1.OnUploadEventHandler += toolbarControl1_OnUpload;
Run Code Online (Sandbox Code Playgroud)

提前致谢.

Jak*_*cki 9

第二个采用较少编码,两者意味着相同.

您可能需要考虑使用EventHandler的通用版本 - EventHandler<TEventArgs>.您将保存声明所有这些代表.

你也可以使用lambda表达式,即.

toolbarControl1.OnUploadEventHandler += 
    (sender, args) => { /* Your code goes here */ };
Run Code Online (Sandbox Code Playgroud)