【发布时间】:2010-11-10 10:09:17
【问题描述】:
我有这段代码不起作用:
public CartaoCidadao()
{
InitializeComponent();
object o = WebDAV.Classes.SCWatcher.LoadAssembly();
MethodInfo method =
this.GetType().GetMethod("Inserted",
BindingFlags.NonPublic | BindingFlags.Instance);
EventInfo eventInfo = o.GetType().GetEvent("CardInserted");
Type type = eventInfo.EventHandlerType;
Delegate handler = Delegate.CreateDelegate(type, this , method);
eventInfo.AddEventHandler(o, handler);
}
void Inserted(string readerName, string cardName)
{
System.Windows.Forms.MessageBox.Show(readerName);
}
事件 CardInserted 存在于另一个 DLL 文件中,并且对象“o”加载正常。委托处理程序在生效后具有值。我只是不能触发事件。
【问题讨论】:
标签: c# .net events reflection