這可能是一個愚蠢的問題,但我不能得到這個工作。EventHandler沒有被調用
使用第三方C#庫,我需要通過一個事件處理程序來獲取實時數據,它是這樣的東西:
Library.KEvents bnoEvent = new Library.KEvents();
envtsList.Add(bnoEvent);
/*
Some code to set bnoEvent up
*/
bnoEvent.OnEvent += new Library._IKEventsEvents_OnEventEventHandler(bnoEvent_OnEvent);
bnoEvent_OnEvent
從未執行的函數。
演示代碼,我得到了(在VB中)看起來是這樣的:
If KEventsA Is Nothing Then
Set KEventsA = New Library.KEvents
End If
/* Setting KEventA up */
正被調用的方法是:
Private Sub KEvents_OnEvent(data As KType)
這讓我發瘋!我找不到這個函數和KEventA
對象之間的任何連接!它如何知道?
我知道在不知道這個庫實際工作的情況下調試相當困難,但是在聲明函數並將其添加爲新的eventHandler之前註冊事件時,我應該做什麼主要事情?
它是古代VB6時代的代碼。該語言不需要特定的事件訂閱,只需提供正確名稱的子例程即可。你的C#看起來是正確的,當然古代代碼不會做你希望的東西。從作者或供應商處獲得幫助是您唯一真正的追求。 –