![]() |
1
5
你可以通过反射来做到这一点,但这并不明显。如果在C#中声明事件,则将向类中添加一个字段,该字段的事件名称为+“event”。如果在该字段上调用GetValue,它将返回一个MulticastDelegate实例。 拥有MulticastDelegate后,您可以获得调用列表,并依次调用每个成员:
请注意,这需要从实例获取非公共字段,因此它只能在完全信任的情况下工作,并且非常有限。 对要做到这一点,修改上述代码将相当容易。用这个替换“myClassInstance”。这实际上也将允许它在完全信任的情况下正常工作,因为非公共绑定标志不再是一个问题。 |
![]() |
2
1
简短回答:没有。 只有声明事件的类才能引发它
我不这么认为,至少不容易。。。即使使用反射,也没有
编辑:实际上这是可以做到的(见里德的答案),但有一个限制,即应用程序必须在完全信任的情况下运行。 |
![]() |
OREO · 如何在不实际单击复选框的情况下选中它 1 年前 |
![]() |
Dan · 在元素外部设置html点击处理程序点击后立即触发 1 年前 |
![]() |
Mero · Svelte在父事件调用上调用新的嵌套事件处理程序 1 年前 |
|
iorice · usercontrol dll中的组件事件 1 年前 |
![]() |
Awin · 点击事件功能不适用于Vue组件 1 年前 |
![]() |
Kiwi · 将可共享的自定义数据添加到事件MS图形api 2 年前 |