我有兩個對象 - 一個包含一些代碼將激發一個事件,另一個包含該事件的處理程序。我不能在第一個對象的Load中添加「AddHandler」,因爲第二個對象的實例尚不存在。當我提出我的事件時,我想檢查一下object2的副本是否已經實例化(容易做到),並且如果處理程序已經附加到事件(不知道如何執行此操作)。確定一個事件是否已經連接到
我也接受另一個關於如何做到這一點的建議。如果我在Object1.Load中執行AddHandler,並且Object2還不存在,那麼即使稍後創建,它也不會處理我的事件。現在,在觸發事件的代碼中,我只是在每次提出事件時都使用RemoveHandler和AddHandler,然後我知道當對象最終存在時我會附加,但我知道這一點是一個糟糕的方法。
我看到一篇關於類似文章(Determine list of event handlers bound to event)的文章,也許我在翻譯中缺少某些東西,但我無法讓代碼在VB.NET中處理我的自定義事件。
你爲什麼不能使用WITHEVENTS? – chrissie1 2009-06-18 14:44:31
我不知道如何使用WithEvents會影響我的情況 - 這不是一個事件沒有提出,或處理程序工作不正常 - 他們都很好。這只是我不能附加處理程序,直到我有一個將處理事件的對象的實例,所以我不確定是檢查該事件的最佳位置。 – SqlRyan 2009-06-18 15:31:37