.NET 3.5:带有引用参数的处理程序的匿名委托

发布于 2024-09-24 22:04:17 字数 251 浏览 5 评论 0原文

public delegate void DocumentCompleteEventHandler(object pDisp, ref object URL)

可以使用 lambda 表达式吗,例如:

ie.DocumentComplete += (o, e) => {  };

它表达式不起作用。我应该如何更改它以便在代码中使用?是否可以?

I have

public delegate void DocumentCompleteEventHandler(object pDisp, ref object URL)

Can i use lambda expression such as :

ie.DocumentComplete += (o, e) => {  };

It expression doesn't work. How should i change it for using in code? Is it possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

薄荷→糖丶微凉 2024-10-01 22:04:17

您是否尝试过:

ie.DocumentComplete += (object o, ref object e) => {};

有时编译器无法通过纯推理来弄清楚事情,您需要指定 labmda 参数类型(和修饰符)。请注意,这是一个全有或全无的事情:您是否必须为所有参数指定类型根本不。

另外,我正在等待某个斯基特先生跳到这里并粘贴一篇文章来窃取我的所有观点。

Have you tried:

ie.DocumentComplete += (object o, ref object e) => {};

Sometimes the compiler can't figure out things through pure inference and you need to specify the labmda argument types (and modifiers.) Note that it's an all-or-nothing thing: you must given types for all arguments or not at all.

p.s. I'm waiting for a certain Mr. Skeet to hop in here and paste in an essay to steal all of my points.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文